diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml
index 54ba30ed00..5792d0989f 100644
--- a/.github/workflows/docker.yaml
+++ b/.github/workflows/docker.yaml
@@ -171,7 +171,7 @@ jobs:
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # pin@v3.7.0
- name: Set up Docker Buildx
if: github.event_name != 'pull_request'
- uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # pin@v3.11.1
+ uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # pin@v3.12.0
- name: Set up cosign
if: github.event_name != 'pull_request'
uses: sigstore/cosign-installer@faadad0cce49287aee09b3a48701e75088a2c6ad # pin@v4.0.0
diff --git a/.github/workflows/qc_checks.yaml b/.github/workflows/qc_checks.yaml
index 88ed2bab31..03a24e5b3b 100644
--- a/.github/workflows/qc_checks.yaml
+++ b/.github/workflows/qc_checks.yaml
@@ -39,6 +39,7 @@ jobs:
force: ${{ steps.force.outputs.force }}
cicd: ${{ steps.filter.outputs.cicd }}
requirements: ${{ steps.filter.outputs.requirements }}
+ runner-perf: ${{ steps.runner-perf.outputs.runner }}
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # pin@v6.0.1
@@ -74,6 +75,10 @@ jobs:
if: |
contains(github.event.pull_request.labels.*.name, 'dependency') ||
contains(github.event.pull_request.labels.*.name, 'full-run')
+ - name: Which runner to use?
+ id: runner-perf
+ # decide if we are running in inventree/inventree -> use codspeed-macro runner else ubuntu-24.04
+ run: echo "runner=$([[ '${{ github.repository }}' == 'inventree/InvenTree' ]] && echo 'codspeed-macro' || echo 'ubuntu-24.04')" >> $GITHUB_OUTPUT
pre-commit:
name: Style [pre-commit]
@@ -116,7 +121,7 @@ jobs:
update: true
- name: Check types
run: |
- ty check --python ${Python_ROOT_DIR}/bin/python3
+ ty check --python ${Python_ROOT_DIR}/bin/python3 src/backend
mkdocs:
name: Style [Documentation]
@@ -176,7 +181,7 @@ jobs:
- name: Export API Documentation
run: invoke dev.schema --ignore-warnings --filename src/backend/InvenTree/schema.yml
- name: Upload schema
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
with:
name: schema.yml
path: src/backend/InvenTree/schema.yml
@@ -225,17 +230,17 @@ jobs:
- name: Extract settings / tags
run: invoke int.export-definitions --basedir docs
- name: Upload settings
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
with:
name: inventree_settings.json
path: docs/generated/inventree_settings.json
- name: Upload tags
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
with:
name: inventree_tags.yml
path: docs/generated/inventree_tags.yml
- name: Upload filters
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
with:
name: inventree_filters.yml
path: docs/generated/inventree_filters.yml
@@ -258,7 +263,7 @@ jobs:
- name: Create artifact directory
run: mkdir -p artifact
- name: Download schema artifact
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # pin@v6.0.0
+ uses: actions/download-artifact@37930b1c2abaa49bbe596cd826c3c89aef350131 # pin@v7.0.0
with:
path: artifact
merge-multiple: true
@@ -275,17 +280,20 @@ jobs:
echo "after move"
ls -la artifact
rm -rf artifact
- - uses: stefanzweifel/git-auto-commit-action@28e16e81777b558cc906c8750092100bbb34c5e3 # pin@v7.0.0
+ - uses: stefanzweifel/git-auto-commit-action@04702edda442b2e678b25b537cec683a1493fcb9 # pin@v7.1.0
name: Commit schema changes
with:
commit_message: "Update API schema for ${{ env.version }} / ${{ github.sha }}"
python:
name: Tests - inventree-python
- runs-on: ubuntu-24.04
+ runs-on: ${{ needs.paths-filter.outputs.runner-perf }}
needs: ["pre-commit", "paths-filter"]
if: needs.paths-filter.outputs.server == 'true' || needs.paths-filter.outputs.force == 'true'
+ permissions:
+ contents: read
+ id-token: write
env:
WRAPPER_NAME: inventree-python
@@ -300,6 +308,7 @@ jobs:
INVENTREE_SITE_URL: http://127.0.0.1:12345
INVENTREE_DEBUG: true
INVENTREE_LOG_LEVEL: WARNING
+ node_version: '>=20.19.6'
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # pin@v6.0.1
@@ -311,6 +320,7 @@ jobs:
apt-dependency: gettext poppler-utils
dev-install: true
update: true
+ npm: true
- name: Download Python Code For `${WRAPPER_NAME}`
run: git clone --depth 1 https://github.com/inventree/${WRAPPER_NAME} ./${WRAPPER_NAME}
- name: Start InvenTree Server
@@ -324,6 +334,18 @@ jobs:
cd ${WRAPPER_NAME}
invoke check-server
coverage run -m unittest discover -s test/
+ - name: Prepare environment for performance tests
+ run: |
+ pip uninstall pytest-django -y
+ cd ${WRAPPER_NAME}
+ pip install .
+ - name: Performance Reporting
+ uses: CodSpeedHQ/action@dbda7111f8ac363564b0c51b992d4ce76bb89f2f # pin@v4
+ # check if we are in inventree/inventree - reporting only works in that OIDC context
+ if: github.repository == 'inventree/InvenTree'
+ with:
+ mode: walltime
+ run: pytest ./src/performance --codspeed
coverage:
name: Tests - DB [SQLite] + Coverage ${{ matrix.python_version }}
@@ -363,13 +385,13 @@ jobs:
- name: Coverage Tests
run: invoke dev.test --check --coverage --translations
- name: Upload raw coverage to artifacts
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
with:
name: coverage
path: .coverage
retention-days: 14
- name: Upload coverage reports to Codecov
- uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # pin@v5.5.1
+ uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # pin@v5.5.2
if: always()
with:
token: ${{ secrets.CODECOV_TOKEN }}
@@ -378,10 +400,11 @@ jobs:
performance:
name: Tests - Performance
- runs-on: ubuntu-24.04
+ runs-on: ${{ needs.paths-filter.outputs.runner-perf }}
needs: ["pre-commit", "paths-filter"]
- if: needs.paths-filter.outputs.server == 'true' || needs.paths-filter.outputs.force == 'true'
+ # check if we are in inventree/inventree - reporting only works in that OIDC context
+ if: (needs.paths-filter.outputs.server == 'true' || needs.paths-filter.outputs.force == 'true') && github.repository == 'inventree/InvenTree'
permissions:
contents: read
id-token: write
@@ -403,10 +426,13 @@ jobs:
apt-dependency: gettext poppler-utils
dev-install: true
update: true
+ npm: true
+ env:
+ node_version: '>=20.19.0'
- name: Performance Reporting
- uses: CodSpeedHQ/action@346a2d8a8d9d38909abd0bc3d23f773110f076ad # pin@v4
+ uses: CodSpeedHQ/action@dbda7111f8ac363564b0c51b992d4ce76bb89f2f # pin@v4
with:
- mode: simulation
+ mode: walltime
run: inv dev.test --pytest
postgres:
@@ -545,7 +571,7 @@ jobs:
- name: Run Tests
run: invoke dev.test --check --migrations --report --coverage --translations
- name: Upload coverage reports to Codecov
- uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # pin@v5.5.1
+ uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # pin@v5.5.2
if: always()
with:
token: ${{ secrets.CODECOV_TOKEN }}
@@ -667,7 +693,7 @@ jobs:
- name: Run Playwright tests
id: tests
run: cd src/frontend && npx nyc playwright test
- - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
if: ${{ !cancelled() && steps.tests.outcome == 'failure' }}
with:
name: playwright-report
@@ -676,7 +702,7 @@ jobs:
- name: Report coverage
run: cd src/frontend && npx nyc report --report-dir ./coverage --temp-dir .nyc_output --reporter=lcov --exclude-after-remap false
- name: Upload coverage reports to Codecov
- uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 # pin@v5.5.1
+ uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # pin@v5.5.2
with:
token: ${{ secrets.CODECOV_TOKEN }}
slug: inventree/InvenTree
@@ -712,7 +738,7 @@ jobs:
run: |
cd src/backend/InvenTree/web/static
zip -r frontend-build.zip web/ web/.vite
- - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # pin@v5.0.0
+ - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # pin@v6.0.0
with:
name: frontend-build
path: src/backend/InvenTree/web/static/web
@@ -737,7 +763,7 @@ jobs:
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload SARIF file
- uses: github/codeql-action/upload-sarif@fdbfb4d2750291e159f0156def62b853c2798ca2 # pin@v3
+ uses: github/codeql-action/upload-sarif@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # pin@v3
with:
sarif_file: results.sarif
category: zizmor
diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index 97ddcbff17..ff0f557d68 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -55,7 +55,7 @@ jobs:
- name: Build frontend
run: cd src/frontend && npm run compile && npm run build
- name: Create SBOM for frontend
- uses: anchore/sbom-action@fbfd9c6c189226748411491745178e0c2017392d # pin@v0
+ uses: anchore/sbom-action@a930d0ac434e3182448fe678398ba5713717112a # pin@v0
with:
artifact-name: frontend-build.spdx
path: src/frontend
@@ -65,13 +65,15 @@ jobs:
run: cd src/backend/InvenTree/web/static/web/.vite && echo "${REF_NAME}" > tag.txt
env:
REF_NAME: ${{ github.ref_name }}
+ - name: Write version file - SOURCE
+ run: cd src/backend/InvenTree/web/static/web/.vite && echo "GitHub Actions build on $(date --utc +%Y-%m-%dT%H:%M:%SZ)" > source.txt
- name: Zip frontend
run: |
cd src/backend/InvenTree/web/static/web
zip -r ../frontend-build.zip * .vite
- name: Attest Build Provenance
id: attest
- uses: actions/attest-build-provenance@977bb373ede98d70efdf65b84cb5f73e068dcc2a # pin@v1
+ uses: actions/attest-build-provenance@00014ed6ed5efc5b1ab7f7f34a39eb55d41aa4f8 # pin@v1
with:
subject-path: "${{ github.workspace }}/src/backend/InvenTree/web/static/frontend-build.zip"
diff --git a/.github/workflows/scorecard.yaml b/.github/workflows/scorecard.yaml
index 167b29bc60..1387301622 100644
--- a/.github/workflows/scorecard.yaml
+++ b/.github/workflows/scorecard.yaml
@@ -59,7 +59,7 @@ jobs:
# Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF
# format to the repository Actions tab.
- name: "Upload artifact"
- uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
+ uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
with:
name: SARIF file
path: results.sarif
@@ -67,6 +67,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@fdbfb4d2750291e159f0156def62b853c2798ca2 # v4.31.5
+ uses: github/codeql-action/upload-sarif@5d4e8d1aca955e8d8589aabd499c5cae939e33c7 # v4.31.9
with:
sarif_file: results.sarif
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index fc4066a21e..4894553a9a 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -18,7 +18,7 @@ repos:
exclude: mkdocs.yml
- id: mixed-line-ending
- repo: https://github.com/astral-sh/ruff-pre-commit
- rev: v0.14.8
+ rev: v0.14.10
hooks:
- id: ruff-format
args: [--preview]
@@ -29,7 +29,7 @@ repos:
--preview
]
- repo: https://github.com/astral-sh/uv-pre-commit
- rev: 0.9.16
+ rev: 0.9.22
hooks:
- id: pip-compile
name: pip-compile requirements-dev.in
@@ -71,7 +71,7 @@ repos:
src/frontend/vite.config.ts |
)$
- repo: https://github.com/biomejs/pre-commit
- rev: v2.3.8
+ rev: v2.3.10
hooks:
- id: biome-check
additional_dependencies: ["@biomejs/biome@1.9.4"]
diff --git a/CHANGELOG.md b/CHANGELOG.md
index af5b9c2437..f2b1be6bef 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Breaking Changes
- [#10699](https://github.com/inventree/InvenTree/pull/10699) removes the `PartParameter` and `PartParameterTempalate` models (and associated API endpoints). These have been replaced with generic `Parameter` and `ParameterTemplate` models (and API endpoints). Any external client applications which made use of the old endpoints will need to be updated.
+- [#11035](https://github.com/inventree/InvenTree/pull/11035) moves to a single endpoint for all metadata operations. The previous endpoints for PartMetadata, SupplierPartMetadata, etc have been removed. Any external client applications which made use of the old endpoints will need to be updated.
### Added
@@ -27,6 +28,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Removed python 3.9 / 3.10 support as part of Django 5.2 upgrade in [#10730](https://github.com/inventree/InvenTree/pull/10730)
- Removed the "PartParameter" and "PartParameterTemplate" models (and associated API endpoints) in [#10699](https://github.com/inventree/InvenTree/pull/10699)
- Removed the "ManufacturerPartParameter" model (and associated API endpoints) [#10699](https://github.com/inventree/InvenTree/pull/10699)
+- Removed individual metadata endpoints for all models ([#11035](https://github.com/inventree/InvenTree/pull/11035))
## 1.1.0 - 2025-11-02
diff --git a/README.md b/README.md
index 9d1dc34200..19a3644fe8 100644
--- a/README.md
+++ b/README.md
@@ -56,7 +56,7 @@ InvenTree is designed to be **extensible**, and provides multiple options for **
* [InvenTree API](https://docs.inventree.org/en/latest/api/)
* [Python module](https://docs.inventree.org/en/latest/api/python/)
* [Plugin interface](https://docs.inventree.org/en/latest/plugins/)
-* [Third party tools](https://docs.inventree.org/en/latest/plugins/integrate/)
+* [Third party tools](https://inventree.org/extend/integrate/)
### :space_invader: Tech Stack
@@ -200,6 +200,7 @@ Find a full list of used third-party libraries in the license information dialog
+
diff --git a/contrib/container/docker-compose.yml b/contrib/container/docker-compose.yml
index 5e2e061dd3..ca0fe6cd19 100644
--- a/contrib/container/docker-compose.yml
+++ b/contrib/container/docker-compose.yml
@@ -3,7 +3,7 @@
# - gunicorn as the InvenTree web server
# - django-q as the InvenTree background worker process
# - Caddy as a reverse proxy
-# - redis as the cache manager (optional, disabled by default)
+# - redis as the cache manager (optional, enabled by default)
# ---------------------
# READ BEFORE STARTING!
@@ -64,6 +64,8 @@ services:
- .env
expose:
- ${INVENTREE_CACHE_PORT:-6379}
+ volumes:
+ - ${INVENTREE_EXT_VOLUME}/redis:/data
restart: always
# InvenTree web server service
diff --git a/contrib/container/requirements.txt b/contrib/container/requirements.txt
index 44449c4278..d7f1afe1cb 100644
--- a/contrib/container/requirements.txt
+++ b/contrib/container/requirements.txt
@@ -1,12 +1,12 @@
# This file was autogenerated by uv via the following command:
# uv pip compile contrib/container/requirements.in -o contrib/container/requirements.txt --python-version=3.11 -b src/backend/requirements.txt
-asgiref==3.10.0
+asgiref==3.11.0
# via django
-django==5.2.9
+django==5.2.10
# via
# -r contrib/container/requirements.in
# django-auth-ldap
-django-auth-ldap==5.2.0
+django-auth-ldap==5.3.0
# via -r contrib/container/requirements.in
gunicorn==23.0.0
# via -r contrib/container/requirements.in
@@ -20,11 +20,11 @@ packaging==25.0
# via
# gunicorn
# mariadb
-psycopg[binary, pool]==3.2.12
+psycopg[binary, pool]==3.3.2
# via -r contrib/container/requirements.in
-psycopg-binary==3.2.12
+psycopg-binary==3.3.2
# via psycopg
-psycopg-pool==3.2.7
+psycopg-pool==3.3.0
# via psycopg
pyasn1==0.6.1
# via
@@ -40,13 +40,13 @@ pyyaml==6.0.3
# via -r contrib/container/requirements.in
setuptools==80.9.0
# via -r contrib/container/requirements.in
-sqlparse==0.5.3
+sqlparse==0.5.5
# via django
typing-extensions==4.15.0
# via
# psycopg
# psycopg-pool
-uv==0.9.8
+uv==0.9.22
# via -r contrib/container/requirements.in
wheel==0.45.1
# via -r contrib/container/requirements.in
diff --git a/contrib/dev_reqs/requirements.txt b/contrib/dev_reqs/requirements.txt
index 687df21d5e..4b07cf24ef 100644
--- a/contrib/dev_reqs/requirements.txt
+++ b/contrib/dev_reqs/requirements.txt
@@ -1,6 +1,6 @@
# This file was autogenerated by uv via the following command:
# uv pip compile contrib/dev_reqs/requirements.in -o contrib/dev_reqs/requirements.txt -b src/backend/requirements.txt
-certifi==2025.10.5
+certifi==2026.1.4
# via requests
charset-normalizer==3.4.4
# via requests
@@ -14,11 +14,9 @@ pyyaml==6.0.3
# via -r contrib/dev_reqs/requirements.in
requests==2.32.5
# via -r contrib/dev_reqs/requirements.in
-ruamel-yaml==0.18.15
+ruamel-yaml==0.19.1
# via jc
-ruamel-yaml-clib==0.2.15
- # via ruamel-yaml
-urllib3==2.6.0
+urllib3==2.6.3
# via requests
xmltodict==1.0.2
# via jc
diff --git a/docs/docs/assets/images/plugin/model_metadata_api.png b/docs/docs/assets/images/plugin/model_metadata_api.png
deleted file mode 100644
index a62340bffa..0000000000
Binary files a/docs/docs/assets/images/plugin/model_metadata_api.png and /dev/null differ
diff --git a/docs/docs/plugins/metadata.md b/docs/docs/plugins/metadata.md
index 605436b4c9..762deb9c6e 100644
--- a/docs/docs/plugins/metadata.md
+++ b/docs/docs/plugins/metadata.md
@@ -42,12 +42,7 @@ print(part.metadata)
### API Access
-For models which provide this metadata field, access is also provided via the API. Append `/metadata/` to the detail endpoint for a particular model instance to access.
-
-For example:
-
-{{ image("plugin/model_metadata_api.png", "Access model metadata via API", maxheight="400px") }}
-
+For models which provide this metadata field, access is also provided via the API. Use the generic `/metadata///` endpoint to retrieve or update metadata information.
#### PUT vs PATCH
diff --git a/docs/docs/start/accounts.md b/docs/docs/start/accounts.md
index 35c53f6453..262a75c221 100644
--- a/docs/docs/start/accounts.md
+++ b/docs/docs/start/accounts.md
@@ -26,7 +26,7 @@ invoke superuser
Or, if you are running InvenTree in a Docker container:
```bash
-docker exec -rm -it inventree-server invoke superuser
+docker exec -it inventree-server invoke superuser
```
### User Management
diff --git a/docs/docs/start/config.md b/docs/docs/start/config.md
index c739ad2a97..d3eaa04bb6 100644
--- a/docs/docs/start/config.md
+++ b/docs/docs/start/config.md
@@ -333,8 +333,8 @@ The following email settings are available:
| INVENTREE_EMAIL_PORT | email.port | Email server port | 25 |
| INVENTREE_EMAIL_USERNAME | email.username | Email account username | *Not specified* |
| INVENTREE_EMAIL_PASSWORD | email.password | Email account password | *Not specified* |
-| INVENTREE_EMAIL_TLS | email.tls | Enable TLS support | False |
-| INVENTREE_EMAIL_SSL | email.ssl | Enable SSL support | False |
+| INVENTREE_EMAIL_TLS | email.tls | Enable STARTTLS support (commonly port 567) | False |
+| INVENTREE_EMAIL_SSL | email.ssl | Enable legacy SSL/TLS support (commonly port 465) | False |
| INVENTREE_EMAIL_SENDER | email.sender | Sending email address | *Not specified* |
| INVENTREE_EMAIL_PREFIX | email.prefix | Prefix for subject text | [InvenTree] |
diff --git a/docs/requirements.txt b/docs/requirements.txt
index 12bb04b039..2f0bcff4e0 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -1,25 +1,25 @@
# This file was autogenerated by uv via the following command:
# uv pip compile docs/requirements.in -o docs/requirements.txt -b src/backend/requirements.txt
-anyio==4.10.0
+anyio==4.12.1
# via httpx
babel==2.17.0
# via
# mkdocs-git-revision-date-localized-plugin
# mkdocs-material
-backrefs==5.9
+backrefs==6.1
# via mkdocs-material
-beautifulsoup4==4.13.4
+beautifulsoup4==4.14.3
# via mkdocs-mermaid2-plugin
bracex==2.6
# via wcmatch
-certifi==2025.8.3
+certifi==2026.1.4
# via
# httpcore
# httpx
# requests
-charset-normalizer==3.4.2
+charset-normalizer==3.4.4
# via requests
-click==8.1.8
+click==8.3.1
# via
# mkdocs
# neoteroi-mkdocs
@@ -29,7 +29,7 @@ colorama==0.4.6
# mkdocs-material
editorconfig==0.17.1
# via jsbeautifier
-essentials==1.1.6
+essentials==1.1.9
# via essentials-openapi
essentials-openapi==1.3.0
# via neoteroi-mkdocs
@@ -37,9 +37,9 @@ ghp-import==2.1.0
# via mkdocs
gitdb==4.0.12
# via gitpython
-gitpython==3.1.45
+gitpython==3.1.46
# via mkdocs-git-revision-date-localized-plugin
-griffe==1.11.0
+griffe==1.15.0
# via mkdocstrings-python
h11==0.16.0
# via httpcore
@@ -51,7 +51,7 @@ httpcore==1.0.9
# via httpx
httpx==0.28.1
# via neoteroi-mkdocs
-idna==3.10
+idna==3.11
# via
# anyio
# httpx
@@ -65,16 +65,16 @@ jinja2==3.1.6
# neoteroi-mkdocs
jsbeautifier==1.15.4
# via mkdocs-mermaid2-plugin
-markdown==3.8.2
+markdown==3.10
# via
# mkdocs
# mkdocs-autorefs
# mkdocs-material
# mkdocstrings
# pymdown-extensions
-markdown-it-py==3.0.0
+markdown-it-py==4.0.0
# via rich
-markupsafe==3.0.2
+markupsafe==3.0.3
# via
# essentials-openapi
# jinja2
@@ -100,7 +100,7 @@ mkdocs==1.6.1
# mkdocs-simple-hooks
# mkdocstrings
# neoteroi-mkdocs
-mkdocs-autorefs==1.4.2
+mkdocs-autorefs==1.4.3
# via
# mkdocstrings
# mkdocstrings-python
@@ -112,7 +112,7 @@ mkdocs-include-markdown-plugin==7.2.0
# via -r docs/requirements.in
mkdocs-macros-plugin==1.5.0
# via -r docs/requirements.in
-mkdocs-material==9.7.0
+mkdocs-material==9.7.1
# via -r docs/requirements.in
mkdocs-material-extensions==1.3.1
# via mkdocs-material
@@ -126,7 +126,7 @@ mkdocstrings[python]==1.0.0
# via
# -r docs/requirements.in
# mkdocstrings-python
-mkdocstrings-python==1.16.12
+mkdocstrings-python==2.0.1
# via mkdocstrings
neoteroi-mkdocs==1.2.0
# via -r docs/requirements.in
@@ -136,17 +136,17 @@ packaging==25.0
# mkdocs-macros-plugin
paginate==0.5.7
# via mkdocs-material
-pathspec==0.12.1
+pathspec==1.0.1
# via
# mkdocs
# mkdocs-macros-plugin
-platformdirs==4.3.8
+platformdirs==4.5.1
# via mkdocs-get-deps
pygments==2.19.2
# via
# mkdocs-material
# rich
-pymdown-extensions==10.16.1
+pymdown-extensions==10.20
# via
# mkdocs-material
# mkdocs-mermaid2-plugin
@@ -170,7 +170,7 @@ requests==2.32.5
# mkdocs-macros-plugin
# mkdocs-material
# mkdocs-mermaid2-plugin
-rich==14.1.0
+rich==14.2.0
# via neoteroi-mkdocs
setuptools==80.9.0
# via mkdocs-mermaid2-plugin
@@ -180,19 +180,17 @@ six==1.17.0
# python-dateutil
smmap==5.0.2
# via gitdb
-sniffio==1.3.1
- # via anyio
-soupsieve==2.7
+soupsieve==2.8.1
# via beautifulsoup4
super-collections==0.6.2
# via mkdocs-macros-plugin
-termcolor==3.1.0
+termcolor==3.3.0
# via mkdocs-macros-plugin
-typing-extensions==4.14.1
+typing-extensions==4.15.0
# via
# anyio
# beautifulsoup4
-urllib3==2.6.0
+urllib3==2.6.3
# via requests
watchdog==6.0.0
# via mkdocs
diff --git a/src/backend/InvenTree/InvenTree/api.py b/src/backend/InvenTree/InvenTree/api.py
index cd57fb1cc2..9f61ade0aa 100644
--- a/src/backend/InvenTree/InvenTree/api.py
+++ b/src/backend/InvenTree/InvenTree/api.py
@@ -5,15 +5,19 @@ import json
from pathlib import Path
from django.conf import settings
+from django.contrib.contenttypes.models import ContentType
from django.db import transaction
from django.http import JsonResponse
+from django.urls import path, reverse
from django.utils.translation import gettext_lazy as _
+from django.views.generic.base import RedirectView
import structlog
from django_q.models import OrmQ
from drf_spectacular.utils import OpenApiParameter, OpenApiResponse, extend_schema
from rest_framework import serializers
from rest_framework.generics import GenericAPIView
+from rest_framework.request import clone_request
from rest_framework.response import Response
from rest_framework.serializers import ValidationError
from rest_framework.views import APIView
@@ -22,13 +26,13 @@ import InvenTree.config
import InvenTree.permissions
import InvenTree.version
from common.settings import get_global_setting
-from InvenTree import helpers
+from InvenTree import helpers, ready
from InvenTree.auth_overrides import registration_enabled
from InvenTree.mixins import ListCreateAPI
from InvenTree.sso import sso_registration_enabled
from plugin.serializers import MetadataSerializer
from users.models import ApiToken
-from users.permissions import check_user_permission
+from users.permissions import check_user_permission, prefetch_rule_sets
from .helpers import plugins_info
from .helpers_email import is_email_configured
@@ -764,6 +768,13 @@ class APISearchView(GenericAPIView):
search_filters = self.get_result_filters()
+ # Create a clone of the request object to modify
+ # Use GET method for the individual list views
+ cloned_request = clone_request(request, 'GET')
+
+ # Fetch and cache all groups associated with the current user
+ groups = prefetch_rule_sets(request.user)
+
for key, cls in self.get_result_types().items():
# Only return results which are specifically requested
if key in data:
@@ -787,57 +798,145 @@ class APISearchView(GenericAPIView):
view = cls()
# Override regular query params with specific ones for this search request
- request._request.GET = params
- view.request = request
+ cloned_request._request.GET = params
+ view.request = cloned_request
view.format_kwarg = 'format'
# Check permissions and update results dict with particular query
model = view.serializer_class.Meta.model
+ if not check_user_permission(
+ request.user, model, 'view', groups=groups
+ ):
+ results[key] = {
+ 'error': _('User does not have permission to view this model')
+ }
+ continue
+
try:
- if check_user_permission(request.user, model, 'view'):
- results[key] = view.list(request, *args, **kwargs).data
- else:
- results[key] = {
- 'error': _(
- 'User does not have permission to view this model'
- )
- }
+ results[key] = view.list(request, *args, **kwargs).data
except Exception as exc:
results[key] = {'error': str(exc)}
return Response(results)
-class MetadataView(RetrieveUpdateAPI):
- """Generic API endpoint for reading and editing metadata for a model."""
+class GenericMetadataView(RetrieveUpdateAPI):
+ """Metadata for specific instance; see https://docs.inventree.org/en/stable/plugins/metadata/ for more detail on how metadata works. Most core models support metadata."""
model = None # Placeholder for the model class
-
- @classmethod
- def as_view(cls, model, lookup_field=None, **initkwargs):
- """Override to ensure model specific rendering."""
- if model is None:
- raise ValidationError(
- "MetadataView defined without 'model' arg"
- ) # pragma: no cover
- initkwargs['model'] = model
-
- # Set custom lookup field (instead of default 'pk' value) if supplied
- if lookup_field:
- initkwargs['lookup_field'] = lookup_field
-
- return super().as_view(**initkwargs)
+ serializer_class = MetadataSerializer
+ permission_classes = [InvenTree.permissions.ContentTypePermission]
def get_permission_model(self):
"""Return the 'permission' model associated with this view."""
- return self.model
+ model_name = self.kwargs.get('model', None)
+
+ if model_name is None:
+ raise ValidationError(
+ "GenericMetadataView called without 'model' URL parameter"
+ ) # pragma: no cover
+
+ model = ContentType.objects.filter(model=model_name).first()
+
+ if model is None:
+ raise ValidationError(
+ f"GenericMetadataView called with invalid model '{model_name}'"
+ ) # pragma: no cover
+
+ return model.model_class()
def get_queryset(self):
"""Return the queryset for this endpoint."""
- return self.model.objects.all()
+ model = self.get_permission_model()
+ return model.objects.all()
def get_serializer(self, *args, **kwargs):
"""Return MetadataSerializer instance."""
+ is_gen = ready.isGeneratingSchema()
# Detect if we are currently generating the OpenAPI schema
+ if self.model is None and not is_gen:
+ self.model = self.get_permission_model()
+ if self.model is None and is_gen:
+ # Provide a default model for schema generation
+ import users.models
+
+ self.model = users.models.User
return MetadataSerializer(self.model, *args, **kwargs)
+
+ def dispatch(self, request, *args, **kwargs):
+ """Override dispatch to set lookup field dynamically."""
+ self.lookup_field = self.kwargs.get('lookup_field', 'pk')
+ self.lookup_url_kwarg = (
+ 'lookup_value' if 'lookup_field' in self.kwargs else 'pk'
+ )
+ return super().dispatch(request, *args, **kwargs)
+
+
+class SimpleGenericMetadataView(GenericMetadataView):
+ """Simplified version of GenericMetadataView which always uses 'pk' as the lookup field."""
+
+ def dispatch(self, request, *args, **kwargs):
+ """Override dispatch to set lookup field to 'pk'."""
+ self.lookup_field = 'pk'
+ self.lookup_url_kwarg = None
+ return super().dispatch(request, *args, **kwargs)
+
+ @extend_schema(operation_id='metadata_pk_retrieve')
+ def get(self, request, *args, **kwargs):
+ """Perform a GET request to retrieve metadata for the given object."""
+ return super().get(request, *args, **kwargs)
+
+ @extend_schema(operation_id='metadata_pk_update')
+ def put(self, request, *args, **kwargs):
+ """Perform a PUT request to update metadata for the given object."""
+ return super().put(request, *args, **kwargs)
+
+ @extend_schema(operation_id='metadata_pk_partial_update')
+ def patch(self, request, *args, **kwargs):
+ """Perform a PATCH request to partially update metadata for the given object."""
+ return super().patch(request, *args, **kwargs)
+
+
+class MetadataRedirectView(RedirectView):
+ """Redirect to the generic metadata view for a given model."""
+
+ model_name = None # Placeholder for the model class
+ lookup_field = 'pk'
+ lookup_field_ref = 'pk'
+ permanent = True
+
+ def get_redirect_url(self, *args, **kwargs) -> str | None:
+ """Return the redirect URL for this view."""
+ _kwargs = {
+ 'model': self.model_name,
+ 'lookup_value': self.kwargs.get(self.lookup_field_ref, None),
+ 'lookup_field': self.lookup_field,
+ }
+ return reverse('api-generic-metadata', args=args, kwargs=_kwargs)
+
+
+def meta_path(model, lookup_field: str = 'pk', lookup_field_ref: str = 'pk'):
+ """Helper function for constructing metadata path for a given model.
+
+ Arguments:
+ model: The model class to use
+ lookup_field: The lookup field to use (if not 'pk')
+ lookup_field_ref: The reference name for the lookup field in the request(if not 'pk')
+
+ Returns:
+ A path to the generic metadata view for the given model
+ """
+ if model is None:
+ raise ValidationError(
+ "redirect_metadata_view called without 'model' arg"
+ ) # pragma: no cover
+
+ return path(
+ 'metadata/',
+ MetadataRedirectView.as_view(
+ model_name=model._meta.model_name,
+ lookup_field=lookup_field,
+ lookup_field_ref=lookup_field_ref,
+ ),
+ )
diff --git a/src/backend/InvenTree/InvenTree/api_version.py b/src/backend/InvenTree/InvenTree/api_version.py
index 35d64fcb0d..4f6e538ceb 100644
--- a/src/backend/InvenTree/InvenTree/api_version.py
+++ b/src/backend/InvenTree/InvenTree/api_version.py
@@ -1,11 +1,33 @@
"""InvenTree API version information."""
# InvenTree API version
-INVENTREE_API_VERSION = 435
+INVENTREE_API_VERSION = 442
"""Increment this API version number whenever there is a significant change to the API that any clients need to know about."""
INVENTREE_API_TEXT = """
+v442 -> 2026-01-17 : https://github.com/inventree/InvenTree/pull/11157
+ - Typo fixes, no functional changes
+
+v441 -> 2026-01-17 : https://github.com/inventree/InvenTree/pull/11153
+ - Allow export of supplier part pricing data
+
+v440 -> 2026-01-15 : https://github.com/inventree/InvenTree/pull/10796
+ - Adds confirm and confirm_text to all settings
+
+v439 -> 2026-01-09 : https://github.com/inventree/InvenTree/pull/11092
+ - Add missing nullable annotations
+
+v438 -> 2026-01-09 : https://github.com/inventree/InvenTree/pull/11104
+ - Adds a simpler / faster health check endpoint at /api/system/health/
+
+v437 -> 2026-01-07 : https://github.com/inventree/InvenTree/pull/11084
+ - Adds generic parameter support for the StockLocation model
+
+v436 -> 2026-01-06 : https://github.com/inventree/InvenTree/pull/11035
+ - Removes model-specific metadata endpoints and replaces them with redirects
+ - Adds new generic /api/metadata// endpoint to retrieve metadata for any model
+
v435 -> 2025-12-16 : https://github.com/inventree/InvenTree/pull/11030
- Adds token refresh endpoint to auth API
diff --git a/src/backend/InvenTree/InvenTree/helpers_email.py b/src/backend/InvenTree/InvenTree/helpers_email.py
index 74d189d5d2..de90c0d323 100644
--- a/src/backend/InvenTree/InvenTree/helpers_email.py
+++ b/src/backend/InvenTree/InvenTree/helpers_email.py
@@ -122,7 +122,8 @@ def get_email_for_user(user) -> Optional[str]:
# Otherwise, find first matching email
# Priority is given to primary or verified email addresses
if (
- email := EmailAddress.objects.filter(user=user)
+ email := EmailAddress.objects
+ .filter(user=user)
.order_by('-primary', '-verified')
.first()
):
diff --git a/src/backend/InvenTree/InvenTree/management/commands/remove_mfa.py b/src/backend/InvenTree/InvenTree/management/commands/remove_mfa.py
index a7a1a038dd..4d030300f9 100644
--- a/src/backend/InvenTree/InvenTree/management/commands/remove_mfa.py
+++ b/src/backend/InvenTree/InvenTree/management/commands/remove_mfa.py
@@ -13,33 +13,59 @@ class Command(BaseCommand):
def add_arguments(self, parser):
"""Add the arguments."""
- parser.add_argument('mail', type=str)
+ parser.add_argument('--mail', type=str, nargs='?')
+ parser.add_argument('--username', type=str, nargs='?')
- def handle(self, *args, mail, **kwargs):
- """Remove MFA for the supplied user (by mail)."""
+ def handle(self, *args, mail, username, **kwargs):
+ """Remove MFA for the supplied user (by mail or username)."""
user = get_user_model()
- mfa_user = [
- *set(
- user.objects.filter(email=mail)
- | user.objects.filter(emailaddress__email=mail)
- )
- ]
+ mfa_user = []
+ success = False
- if len(mfa_user) == 0:
- logger.warning('No user with this mail associated')
- elif len(mfa_user) > 1:
- emails_list = ', '.join(
- sorted(
- {b.email for a in mfa_user for b in a.emailaddress_set.all()}
- | {a.email for a in mfa_user}
+ if mail is not None:
+ mfa_user = [
+ *set(
+ user.objects.filter(email=mail)
+ | user.objects.filter(emailaddress__email=mail)
)
- )
- usernames_list = ', '.join(sorted({a.username for a in mfa_user}))
- logger.error(
- f"Multiple users found with the provided email; Usernames: '{usernames_list}', Emails: '{emails_list}'"
- )
+ ]
+ if len(mfa_user) == 0:
+ logger.warning('No user with this mail associated')
+ elif len(mfa_user) > 1:
+ emails_list = ', '.join(
+ sorted(
+ {b.email for a in mfa_user for b in a.emailaddress_set.all()}
+ | {a.email for a in mfa_user}
+ )
+ )
+ usernames_list = ', '.join(sorted({a.username for a in mfa_user}))
+ logger.error(
+ f"Multiple users found with the provided email; Usernames: '{usernames_list}', Emails: '{emails_list}'"
+ )
+ else:
+ # found exactly one user
+ success = True
+
+ elif username is not None:
+ mfa_user = user.objects.filter(username=username)
+ if len(mfa_user) == 0:
+ logger.warning('No user with this username associated')
+ elif (
+ len(mfa_user) > 1
+ ): # pragma: no cover # Should not be possible due to unique constraint
+ logger.error('Multiple users found with the provided username')
+ else:
+ # found exactly one user
+ success = True
+
else:
- # and clean out all MFA methods
+ logger.error('No mail or username provided')
+ raise ValueError(
+ 'Error: one of the following arguments is required: mail, username'
+ )
+
+ # Clean out all MFA methods
+ if success:
auths = mfa_user[0].authenticator_set.all()
length = len(auths)
auths.delete()
diff --git a/src/backend/InvenTree/InvenTree/management/commands/schema.py b/src/backend/InvenTree/InvenTree/management/commands/schema.py
index 5f7022411f..c71e664a94 100644
--- a/src/backend/InvenTree/InvenTree/management/commands/schema.py
+++ b/src/backend/InvenTree/InvenTree/management/commands/schema.py
@@ -71,7 +71,8 @@ class Command(spectacular.Command):
for p_name, p_spec in spec['paths'].items():
# strip path name
p_name = (
- p_name.removeprefix(dja_path_prefix)
+ p_name
+ .removeprefix(dja_path_prefix)
.removeprefix('/_allauth/browser/v1/')
.removeprefix('/_allauth/app/v1/')
)
diff --git a/src/backend/InvenTree/InvenTree/middleware.py b/src/backend/InvenTree/InvenTree/middleware.py
index 60b3dbe48a..efed42d59c 100644
--- a/src/backend/InvenTree/InvenTree/middleware.py
+++ b/src/backend/InvenTree/InvenTree/middleware.py
@@ -42,7 +42,7 @@ def get_token_from_request(request):
def ensure_slashes(path: str):
- """Ensure that slashes are suroudning the passed path."""
+ """Ensure that slashes are surrounding the passed path."""
if not path.startswith('/'):
path = f'/{path}'
if not path.endswith('/'):
@@ -59,6 +59,7 @@ urls = [
paths_ignore_handling = [
'/api/',
+ '/plugin/',
reverse('auth-check'),
settings.MEDIA_URL,
settings.STATIC_URL,
@@ -68,7 +69,7 @@ paths_ignore_handling = [
paths_own_security = [
'/api/', # DRF handles API
'/o/', # oAuth2 library - has its own auth model
- '/anymail/', # Mails - wehbhooks etc
+ '/anymail/', # Mails - webhooks etc
'/accounts/', # allauth account management - has its own auth model
'/assets/', # Web assets - only used for testing, no security model needed
ensure_slashes(
@@ -322,7 +323,7 @@ class InvenTreeHostSettingsMiddleware(MiddlewareMixin):
# treat the accessed scheme and host
accessed_scheme = request._current_scheme_host
- referer = urlsplit(accessed_scheme)
+ referrer = urlsplit(accessed_scheme)
site_url = urlsplit(settings.SITE_URL)
@@ -330,8 +331,8 @@ class InvenTreeHostSettingsMiddleware(MiddlewareMixin):
site_url_match = (
(
# Exact match on domain
- is_same_domain(referer.netloc, site_url.netloc)
- and referer.scheme == site_url.scheme
+ is_same_domain(referrer.netloc, site_url.netloc)
+ and referrer.scheme == site_url.scheme
)
or (
# Lax protocol match, accessed URL starts with SITE_URL
@@ -341,7 +342,7 @@ class InvenTreeHostSettingsMiddleware(MiddlewareMixin):
or (
# Lax protocol match, same domain
settings.SITE_LAX_PROTOCOL_CHECK
- and referer.hostname == site_url.hostname
+ and referrer.hostname == site_url.hostname
)
)
@@ -367,7 +368,7 @@ class InvenTreeHostSettingsMiddleware(MiddlewareMixin):
trusted_origins_match = (
# Matching domain found in allowed origins
any(
- is_same_domain(referer.netloc, host)
+ is_same_domain(referrer.netloc, host)
for host in [
urlsplit(origin).netloc.lstrip('*')
for origin in settings.CSRF_TRUSTED_ORIGINS
@@ -377,7 +378,7 @@ class InvenTreeHostSettingsMiddleware(MiddlewareMixin):
# Lax protocol match allowed
settings.SITE_LAX_PROTOCOL_CHECK
and any(
- referer.hostname == urlsplit(origin).hostname
+ referrer.hostname == urlsplit(origin).hostname
for origin in settings.CSRF_TRUSTED_ORIGINS
)
)
diff --git a/src/backend/InvenTree/InvenTree/mixins.py b/src/backend/InvenTree/InvenTree/mixins.py
index 498b201872..5dd51c30ca 100644
--- a/src/backend/InvenTree/InvenTree/mixins.py
+++ b/src/backend/InvenTree/InvenTree/mixins.py
@@ -239,10 +239,17 @@ class OutputOptionsMixin:
def get_serializer(self, *args, **kwargs):
"""Return serializer instance with output options applied."""
- if self.output_options and hasattr(self, 'request'):
+ request = getattr(self, 'request', None)
+
+ if self.output_options and request:
params = self.request.query_params
kwargs.update(self.output_options.format_params(params))
+ # Ensure the request is included in the serializer context
+ context = kwargs.get('context', {})
+ context['request'] = request
+ kwargs['context'] = context
+
serializer = super().get_serializer(*args, **kwargs)
# Check if the serializer actually can be filtered - makes not much sense to use this mixin without that prerequisite
diff --git a/src/backend/InvenTree/InvenTree/models.py b/src/backend/InvenTree/InvenTree/models.py
index 978b11532c..dcb22998ee 100644
--- a/src/backend/InvenTree/InvenTree/models.py
+++ b/src/backend/InvenTree/InvenTree/models.py
@@ -610,7 +610,8 @@ class InvenTreeParameterMixin(InvenTreePermissionCheckMixin, models.Model):
def get_parameters(self) -> QuerySet:
"""Return all Parameter instances for this model."""
return (
- self.parameters_list.all()
+ self.parameters_list
+ .all()
.prefetch_related('template', 'model_type')
.order_by('template__name')
)
@@ -752,7 +753,8 @@ class InvenTreeTree(ContentTypeMixin, MPTTModel):
for child in self.get_children():
# Store a flattened list of node IDs for each of the lower trees
nodes = list(
- child.get_descendants(include_self=True)
+ child
+ .get_descendants(include_self=True)
.values_list('pk', flat=True)
.distinct()
)
diff --git a/src/backend/InvenTree/InvenTree/permissions.py b/src/backend/InvenTree/InvenTree/permissions.py
index bf4335e94c..07006870c5 100644
--- a/src/backend/InvenTree/InvenTree/permissions.py
+++ b/src/backend/InvenTree/InvenTree/permissions.py
@@ -470,3 +470,25 @@ class DataImporterPermission(OASTokenMixin, permissions.BasePermission):
)
return True
+
+
+class ContentTypePermission(OASTokenMixin, permissions.BasePermission):
+ """Mixin class for determining if the user has correct permissions."""
+
+ ENFORCE_USER_PERMS = True
+
+ def has_permission(self, request, view):
+ """Class level permission checks are handled via InvenTree.permissions.IsAuthenticatedOrReadScope."""
+ return request.user and request.user.is_authenticated
+
+ def get_required_alternate_scopes(self, request, view):
+ """Return the required scopes for the current request."""
+ return map_scope(roles=_roles)
+
+ def has_object_permission(self, request, view, obj):
+ """Check if the user has permission to access the object."""
+ if model_class := obj.__class__:
+ return users.permissions.check_user_permission(
+ request.user, model_class, 'change'
+ )
+ return False
diff --git a/src/backend/InvenTree/InvenTree/serializers.py b/src/backend/InvenTree/InvenTree/serializers.py
index 3fc8e04db5..4bd226a574 100644
--- a/src/backend/InvenTree/InvenTree/serializers.py
+++ b/src/backend/InvenTree/InvenTree/serializers.py
@@ -21,6 +21,7 @@ from rest_framework import serializers
from rest_framework.exceptions import ValidationError
from rest_framework.fields import empty
from rest_framework.mixins import ListModelMixin
+from rest_framework.permissions import SAFE_METHODS
from rest_framework.serializers import DecimalField
from rest_framework.utils import model_meta
from taggit.serializers import TaggitSerializer, TagListSerializerField
@@ -163,10 +164,15 @@ class FilterableSerializerMixin:
def gather_filters(self, kwargs) -> None:
"""Gather filterable fields through introspection."""
+ context = kwargs.get('context', {})
+ request = context.get('request', None) or getattr(self, 'request', None)
+
+ # Gather query parameters from the request context
+ query_params = dict(getattr(request, 'query_params', {})) if request else {}
+
# Fast exit if this has already been done or would not have any effect
if getattr(self, '_was_filtered', False) or not hasattr(self, 'fields'):
return
- self._was_filtered = True
# Actually gather the filterable fields
# Also see `enable_filter` where` is_filterable and is_filterable_vals are set
@@ -176,21 +182,22 @@ class FilterableSerializerMixin:
if getattr(a, 'is_filterable', None)
}
- # Gather query parameters from the request context
- query_params = {}
- if context := kwargs.get('context', {}):
- query_params = dict(getattr(context.get('request', {}), 'query_params', {}))
-
# Remove filter args from kwargs to avoid issues with super().__init__
popped_kwargs = {} # store popped kwargs as a arg might be reused for multiple fields
tgs_vals: dict[str, bool] = {}
for k, v in self.filter_targets.items():
pop_ref = v['filter_name'] or k
val = kwargs.pop(pop_ref, popped_kwargs.get(pop_ref))
-
# Optionally also look in query parameters
- if val is None and self.filter_on_query and v.get('filter_by_query', True):
+ # Note that we only do this for a top-level serializer, to avoid issues with nested serializers
+ if (
+ request
+ and val is None
+ and self.filter_on_query
+ and v.get('filter_by_query', True)
+ ):
val = query_params.pop(pop_ref, None)
+
if isinstance(val, list) and len(val) == 1:
val = val[0]
@@ -199,7 +206,9 @@ class FilterableSerializerMixin:
tgs_vals[k] = (
str2bool(val) if isinstance(val, (str, int, float)) else val
) # Support for various filtering style for backwards compatibility
+
self.filter_target_values = tgs_vals
+ self._was_filtered = True
# Ensure this mixin is not broadly applied as it is expensive on scale (total CI time increased by 21% when running all coverage tests)
if len(self.filter_targets) == 0 and not self.no_filters:
@@ -216,14 +225,12 @@ class FilterableSerializerMixin:
):
return
- # Skip filtering when exporting data - leave all fields intact
- if getattr(self, '_exporting_data', False):
- return
+ is_exporting = getattr(self, '_exporting_data', False)
# Skip filtering for a write requests - all fields should be present for data creation
if request := self.context.get('request', None):
if method := getattr(request, 'method', None):
- if str(method).lower() in ['post', 'put', 'patch']:
+ if method not in SAFE_METHODS and not is_exporting:
return
# Throw out fields which are not requested (either by default or explicitly)
diff --git a/src/backend/InvenTree/InvenTree/test_commands.py b/src/backend/InvenTree/InvenTree/test_commands.py
index a83a0d4cc2..d744dd78d2 100644
--- a/src/backend/InvenTree/InvenTree/test_commands.py
+++ b/src/backend/InvenTree/InvenTree/test_commands.py
@@ -19,40 +19,50 @@ class CommandTestCase(TestCase):
def test_remove_mfa(self):
"""Test the remove_mfa command."""
+
+ def get_dummyuser(uname='admin'):
+ admin = User.objects.create_user(
+ username=uname, email=f'{uname}@example.org'
+ )
+ admin.authenticator_set.create(type='TOTP', data={})
+ self.assertEqual(admin.authenticator_set.all().count(), 1)
+ return admin
+
# missing arg
with self.assertRaises(Exception) as cm:
call_command('remove_mfa', verbosity=0)
self.assertEqual(
- 'Error: the following arguments are required: mail', str(cm.exception)
+ 'Error: one of the following arguments is required: mail, username',
+ str(cm.exception),
)
# no user
with self.assertLogs('inventree') as cm:
self.assertFalse(
- call_command('remove_mfa', 'admin@example.org', verbosity=0)
+ call_command('remove_mfa', mail='admin@example.org', verbosity=0)
)
self.assertIn('No user with this mail associated', str(cm[1]))
# correct removal
- my_admin1 = User.objects.create_user(
- username='admin', email='admin@example.org'
- )
- my_admin1.authenticator_set.create(type='TOTP', data={})
- self.assertEqual(my_admin1.authenticator_set.all().count(), 1)
- output = call_command('remove_mfa', 'admin@example.org', verbosity=0)
+ my_admin1 = get_dummyuser()
+ output = call_command('remove_mfa', mail=my_admin1.email, verbosity=0)
self.assertEqual(output, 'done')
self.assertEqual(my_admin1.authenticator_set.all().count(), 0)
# two users with same email
- my_admin2 = User.objects.create_user(
- username='admin2', email='admin@example.org'
- )
+ my_admin2 = User.objects.create_user(username='admin2', email=my_admin1.email)
my_admin2.emailaddress_set.create(email='456')
my_admin2.emailaddress_set.create(email='123')
with self.assertLogs('inventree') as cm:
self.assertFalse(
- call_command('remove_mfa', 'admin@example.org', verbosity=0)
+ call_command('remove_mfa', mail=my_admin1.email, verbosity=0)
)
self.assertIn('Multiple users found with the provided email', str(cm[1]))
self.assertIn('admin, admin2', str(cm[1]))
- self.assertIn('123, 456, admin@example.org', str(cm[1]))
+ self.assertIn(f'123, 456, {my_admin1.email}', str(cm[1]))
+
+ # correct removal by username
+ my_admin3 = get_dummyuser('admin3')
+ output = call_command('remove_mfa', username=my_admin3.username, verbosity=0)
+ self.assertEqual(output, 'done')
+ self.assertEqual(my_admin3.authenticator_set.all().count(), 0)
diff --git a/src/backend/InvenTree/InvenTree/test_serializers.py b/src/backend/InvenTree/InvenTree/test_serializers.py
index 4cde34d806..b6c794e33f 100644
--- a/src/backend/InvenTree/InvenTree/test_serializers.py
+++ b/src/backend/InvenTree/InvenTree/test_serializers.py
@@ -157,7 +157,7 @@ class FilteredSerializers(InvenTreeAPITestCase):
_ = BadSerializer()
self.assertTrue(True) # Dummy assertion to ensure we reach here
- def test_failiure_OutputOptionsMixin(self):
+ def test_failure_OutputOptionsMixin(self):
"""Test failure case for OutputOptionsMixin."""
class BadSerializer(InvenTree.serializers.InvenTreeModelSerializer):
diff --git a/src/backend/InvenTree/InvenTree/unit_test.py b/src/backend/InvenTree/InvenTree/unit_test.py
index 5360d9f71d..54cde6afe9 100644
--- a/src/backend/InvenTree/InvenTree/unit_test.py
+++ b/src/backend/InvenTree/InvenTree/unit_test.py
@@ -655,7 +655,9 @@ class InvenTreeAPITestCase(
# Append URL params
url += '?' + '&'.join([f'{key}={value}' for key, value in params.items()])
- response = self.client.get(url, data=None, format='json')
+ response = self.get(
+ url, data=None, format='json', expected_code=expected_code, **kwargs
+ )
self.check_response(url, response, expected_code=expected_code)
# Check that the response is of the correct type
diff --git a/src/backend/InvenTree/InvenTree/version.py b/src/backend/InvenTree/InvenTree/version.py
index 387d60c0fb..b28d86a433 100644
--- a/src/backend/InvenTree/InvenTree/version.py
+++ b/src/backend/InvenTree/InvenTree/version.py
@@ -12,6 +12,8 @@ import sys
from datetime import datetime as dt
from datetime import timedelta as td
+from django.conf import settings
+
from .api_version import INVENTREE_API_TEXT, INVENTREE_API_VERSION
# InvenTree software version
@@ -22,6 +24,7 @@ MIN_PYTHON_VERSION = (3, 11)
logger = logging.getLogger('inventree')
+git_warning_txt = 'INVE-W3: Could not detect git information.'
# Discover git
try:
@@ -33,8 +36,11 @@ try:
main_repo = Repo(pathlib.Path(__file__).parent.parent.parent.parent.parent)
main_commit = main_repo[main_repo.head()]
except NotGitRepository:
- # If we are running in a docker container, the repo may not be available
- logger.warning('INVE-W3: Could not detect git information.')
+ # If we are running in a docker container, the repo may not be available, only logging as warning if not in docker
+ if settings.DOCKER:
+ logger.info(git_warning_txt)
+ else:
+ logger.warning(git_warning_txt)
main_repo = None
main_commit = None
@@ -51,7 +57,7 @@ except ImportError:
main_commit = None
main_branch = None
except Exception as exc:
- logger.warning('INVE-W3: Could not detect git information.', exc_info=exc)
+ logger.warning(git_warning_txt, exc_info=exc)
main_repo = None
main_commit = None
main_branch = None
diff --git a/src/backend/InvenTree/build/api.py b/src/backend/InvenTree/build/api.py
index d7b8692bab..755a60db76 100644
--- a/src/backend/InvenTree/build/api.py
+++ b/src/backend/InvenTree/build/api.py
@@ -24,7 +24,7 @@ from build.models import Build, BuildItem, BuildLine
from build.status_codes import BuildStatus, BuildStatusGroups
from data_exporter.mixins import DataExportViewMixin
from generic.states.api import StatusView
-from InvenTree.api import BulkDeleteMixin, MetadataView, ParameterListMixin
+from InvenTree.api import BulkDeleteMixin, ParameterListMixin, meta_path
from InvenTree.fields import InvenTreeOutputOption, OutputConfiguration
from InvenTree.filters import (
SEARCH_ORDER_FILTER_ALIAS,
@@ -960,11 +960,7 @@ build_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=BuildItem),
- name='api-build-item-metadata',
- ),
+ meta_path(BuildItem),
path('', BuildItemDetail.as_view(), name='api-build-item-detail'),
]),
),
@@ -1007,11 +1003,7 @@ build_api_urls = [
path('finish/', BuildFinish.as_view(), name='api-build-finish'),
path('cancel/', BuildCancel.as_view(), name='api-build-cancel'),
path('unallocate/', BuildUnallocate.as_view(), name='api-build-unallocate'),
- path(
- 'metadata/',
- MetadataView.as_view(model=Build),
- name='api-build-metadata',
- ),
+ meta_path(Build),
path('', BuildDetail.as_view(), name='api-build-detail'),
]),
),
diff --git a/src/backend/InvenTree/build/migrations/0012_build_sales_order.py b/src/backend/InvenTree/build/migrations/0012_build_sales_order.py
index 6b4a845a6e..cd2860919f 100644
--- a/src/backend/InvenTree/build/migrations/0012_build_sales_order.py
+++ b/src/backend/InvenTree/build/migrations/0012_build_sales_order.py
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='build',
name='sales_order',
- field=models.ForeignKey(blank=True, help_text='SalesOrder to which this build is allocated', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='builds', to='order.SalesOrder'),
+ field=models.ForeignKey(blank=True, help_text='Sales Order to which this build is allocated', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='builds', to='order.SalesOrder'),
),
]
diff --git a/src/backend/InvenTree/build/migrations/0014_auto_20200425_1243.py b/src/backend/InvenTree/build/migrations/0014_auto_20200425_1243.py
index af65a12cb3..88fece94ba 100644
--- a/src/backend/InvenTree/build/migrations/0014_auto_20200425_1243.py
+++ b/src/backend/InvenTree/build/migrations/0014_auto_20200425_1243.py
@@ -50,7 +50,7 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='build',
name='sales_order',
- field=models.ForeignKey(blank=True, help_text='SalesOrder to which this build is allocated', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='builds', to='order.SalesOrder', verbose_name='Sales Order Reference'),
+ field=models.ForeignKey(blank=True, help_text='Sales Order to which this build is allocated', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='builds', to='order.SalesOrder', verbose_name='Sales Order Reference'),
),
migrations.AlterField(
model_name='build',
diff --git a/src/backend/InvenTree/build/migrations/0021_auto_20201020_0908_squashed_0026_auto_20201023_1228.py b/src/backend/InvenTree/build/migrations/0021_auto_20201020_0908_squashed_0026_auto_20201023_1228.py
index 5094d74c6d..db2803f53f 100644
--- a/src/backend/InvenTree/build/migrations/0021_auto_20201020_0908_squashed_0026_auto_20201023_1228.py
+++ b/src/backend/InvenTree/build/migrations/0021_auto_20201020_0908_squashed_0026_auto_20201023_1228.py
@@ -37,7 +37,7 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='build',
name='parent',
- field=mptt.fields.TreeForeignKey(blank=True, help_text='BuildOrder to which this build is allocated', null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='children', to='build.Build', verbose_name='Parent Build'),
+ field=mptt.fields.TreeForeignKey(blank=True, help_text='Build Order to which this build is allocated', null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='children', to='build.Build', verbose_name='Parent Build'),
),
migrations.AlterField(
model_name='build',
diff --git a/src/backend/InvenTree/build/migrations/0024_auto_20201201_1023.py b/src/backend/InvenTree/build/migrations/0024_auto_20201201_1023.py
index fde4114af5..4e995fdf80 100644
--- a/src/backend/InvenTree/build/migrations/0024_auto_20201201_1023.py
+++ b/src/backend/InvenTree/build/migrations/0024_auto_20201201_1023.py
@@ -15,6 +15,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='build',
name='parent',
- field=mptt.fields.TreeForeignKey(blank=True, help_text='BuildOrder to which this build is allocated', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='children', to='build.Build', verbose_name='Parent Build'),
+ field=mptt.fields.TreeForeignKey(blank=True, help_text='Build Order to which this build is allocated', null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='children', to='build.Build', verbose_name='Parent Build'),
),
]
diff --git a/src/backend/InvenTree/build/models.py b/src/backend/InvenTree/build/models.py
index 42e8213099..4834e8b1e0 100644
--- a/src/backend/InvenTree/build/models.py
+++ b/src/backend/InvenTree/build/models.py
@@ -263,7 +263,7 @@ class Build(
null=True,
related_name='children',
verbose_name=_('Parent Build'),
- help_text=_('BuildOrder to which this build is allocated'),
+ help_text=_('Build Order to which this build is allocated'),
)
part = models.ForeignKey(
@@ -282,7 +282,7 @@ class Build(
related_name='builds',
null=True,
blank=True,
- help_text=_('SalesOrder to which this build is allocated'),
+ help_text=_('Sales Order to which this build is allocated'),
)
take_from = models.ForeignKey(
@@ -1254,7 +1254,9 @@ class Build(
output.build = self
output.is_building = False
output.location = location
- output.status = status
+
+ # Assign the stock status
+ output.set_status(status)
output.save(add_note=False)
@@ -1326,7 +1328,7 @@ class Build(
# Check which parts we can "use" (may include variants and substitutes)
available_parts = bom_item.get_valid_parts_for_allocation(
- allow_variants=True, allow_substitutes=substitutes
+ allow_variants=True, allow_inactive=False, allow_substitutes=substitutes
)
# Look for available stock items
@@ -1369,10 +1371,7 @@ class Build(
key=lambda item, b=bom_item, v=variant_parts: stock_sort(item, b, v),
)
- if len(available_stock) == 0:
- # No stock items are available
- continue
- elif len(available_stock) == 1 or interchangeable:
+ if len(available_stock) == 1 or interchangeable:
# Either there is only a single stock item available,
# or all items are "interchangeable" and we don't care where we take stock from
@@ -1746,11 +1745,10 @@ class BuildItem(InvenTree.models.InvenTreeMetadataModel):
def save(self, *args, **kwargs):
"""Custom save method for the BuildItem model."""
- self.clean()
-
+ self.clean(raise_error=False)
super().save()
- def clean(self):
+ def clean(self, raise_error: bool = True):
"""Check validity of this BuildItem instance.
The following checks are performed:
@@ -1774,47 +1772,7 @@ class BuildItem(InvenTree.models.InvenTreeMetadataModel):
)
)
- # Allocated quantity cannot exceed available stock quantity
- if self.quantity > self.stock_item.quantity:
- q = InvenTree.helpers.normalize(self.quantity)
- a = InvenTree.helpers.normalize(self.stock_item.quantity)
-
- raise ValidationError({
- 'quantity': _(
- f'Allocated quantity ({q}) must not exceed available stock quantity ({a})'
- )
- })
-
- # Ensure that we do not 'over allocate' a stock item
- available = decimal.Decimal(self.stock_item.quantity)
- quantity = decimal.Decimal(self.quantity)
- build_allocation_count = decimal.Decimal(
- self.stock_item.build_allocation_count(
- exclude_allocations={'pk': self.pk}
- )
- )
- sales_allocation_count = decimal.Decimal(
- self.stock_item.sales_order_allocation_count()
- )
-
- total_allocation = (
- build_allocation_count + sales_allocation_count + quantity
- )
-
- if total_allocation > available:
- raise ValidationError({'quantity': _('Stock item is over-allocated')})
-
- # Allocated quantity must be positive
- if self.quantity <= 0:
- raise ValidationError({
- 'quantity': _('Allocation quantity must be greater than zero')
- })
-
- # Quantity must be 1 for serialized stock
- if self.stock_item.serialized and self.quantity != 1:
- raise ValidationError({
- 'quantity': _('Quantity must be 1 for serialized stock')
- })
+ self.check_allocated_quantity(raise_error=raise_error)
except stock.models.StockItem.DoesNotExist:
raise ValidationError('Stock item must be specified')
@@ -1876,6 +1834,60 @@ class BuildItem(InvenTree.models.InvenTreeMetadataModel):
'stock_item': _('Selected stock item does not match BOM line')
})
+ def check_allocated_quantity(self, raise_error: bool = False):
+ """Ensure that the allocated quantity is valid.
+
+ Will reduce the allocated quantity if it exceeds available stock.
+
+ Arguments:
+ raise_error: If True, raise ValidationError on failure
+
+ Raises:
+ ValidationError: If the allocated quantity is invalid and raise_error is True
+ """
+ error = None
+
+ # Allocated quantity must be positive
+ if self.quantity <= 0:
+ self.quantity = 0
+ error = {'quantity': _('Allocated quantity must be greater than zero')}
+
+ # Quantity must be 1 for serialized stock
+ if self.stock_item.serialized and self.quantity != 1:
+ self.quantity = 1
+ raise ValidationError({
+ 'quantity': _('Quantity must be 1 for serialized stock')
+ })
+
+ # Allocated quantity cannot exceed available stock quantity
+ if self.quantity > self.stock_item.quantity:
+ q = InvenTree.helpers.normalize(self.quantity)
+ a = InvenTree.helpers.normalize(self.stock_item.quantity)
+ self.quantity = self.stock_item.quantity
+ error = {
+ 'quantity': _(
+ f'Allocated quantity ({q}) must not exceed available stock quantity ({a})'
+ )
+ }
+
+ # Ensure that we do not 'over allocate' a stock item
+ available = decimal.Decimal(self.stock_item.quantity)
+ quantity = decimal.Decimal(self.quantity)
+ build_allocation_count = decimal.Decimal(
+ self.stock_item.build_allocation_count(exclude_allocations={'pk': self.pk})
+ )
+ sales_allocation_count = decimal.Decimal(
+ self.stock_item.sales_order_allocation_count()
+ )
+
+ total_allocation = build_allocation_count + sales_allocation_count + quantity
+
+ if total_allocation > available:
+ error = {'quantity': _('Stock item is over-allocated')}
+
+ if error and raise_error:
+ raise ValidationError(error)
+
@property
def build(self):
"""Return the BuildOrder associated with this BuildItem."""
@@ -1887,7 +1899,7 @@ class BuildItem(InvenTree.models.InvenTreeMetadataModel):
return self.build_line.bom_item if self.build_line else None
@transaction.atomic
- def complete_allocation(self, quantity=None, notes='', user=None) -> None:
+ def complete_allocation(self, quantity=None, notes: str = '', user=None) -> None:
"""Complete the allocation of this BuildItem into the output stock item.
Arguments:
@@ -1910,9 +1922,7 @@ class BuildItem(InvenTree.models.InvenTreeMetadataModel):
# Ensure we are not allocating more than available
if quantity > item.quantity:
- raise ValidationError({
- 'quantity': _('Allocated quantity exceeds available stock quantity')
- })
+ quantity = item.quantity
# Split the allocated stock if there are more available than allocated
if item.quantity > quantity:
diff --git a/src/backend/InvenTree/build/serializers.py b/src/backend/InvenTree/build/serializers.py
index b13d5fdf17..641fd2eb12 100644
--- a/src/backend/InvenTree/build/serializers.py
+++ b/src/backend/InvenTree/build/serializers.py
@@ -1378,7 +1378,9 @@ class BuildLineSerializer(
)
allocations = enable_filter(
- BuildItemSerializer(many=True, read_only=True, build_detail=False),
+ BuildItemSerializer(
+ many=True, read_only=True, allow_null=True, build_detail=False
+ ),
True,
prefetch_fields=[
'allocations',
@@ -1426,6 +1428,7 @@ class BuildLineSerializer(
source='bom_item',
many=False,
read_only=True,
+ allow_null=True,
pricing=False,
substitutes=False,
sub_part_detail=False,
@@ -1455,6 +1458,7 @@ class BuildLineSerializer(
source='bom_item.sub_part',
many=False,
read_only=True,
+ allow_null=True,
pricing=False,
),
False,
diff --git a/src/backend/InvenTree/common/api.py b/src/backend/InvenTree/common/api.py
index 4118548acc..694d28940b 100644
--- a/src/backend/InvenTree/common/api.py
+++ b/src/backend/InvenTree/common/api.py
@@ -7,6 +7,7 @@ from django.conf import settings
from django.contrib.contenttypes.models import ContentType
from django.core.exceptions import ValidationError
from django.db.models import Q
+from django.http import JsonResponse
from django.http.response import HttpResponse
from django.urls import include, path, re_path
from django.utils.decorators import method_decorator
@@ -33,11 +34,18 @@ import common.filters
import common.models
import common.serializers
import InvenTree.conversion
+import InvenTree.ready
from common.icons import get_icon_packs
from common.settings import get_global_setting
from data_exporter.mixins import DataExportViewMixin
from generic.states.api import urlpattern as generic_states_api_urls
-from InvenTree.api import BulkCreateMixin, BulkDeleteMixin, MetadataView
+from InvenTree.api import (
+ BulkCreateMixin,
+ BulkDeleteMixin,
+ GenericMetadataView,
+ SimpleGenericMetadataView,
+ meta_path,
+)
from InvenTree.config import CONFIG_LOOKUPS
from InvenTree.filters import (
ORDER_FILTER,
@@ -1065,6 +1073,48 @@ class TestEmail(CreateAPI):
) # pragma: no cover
+class HealthCheckStatusSerializer(serializers.Serializer):
+ """Status of the overall system health."""
+
+ status = serializers.ChoiceField(
+ help_text='Health status of the InvenTree server',
+ choices=['ok', 'loading'],
+ read_only=True,
+ default='ok',
+ )
+
+
+class HealthCheckView(APIView):
+ """Simple JSON endpoint for InvenTree health check.
+
+ Intended to be used by external services to confirm that the InvenTree server is running.
+ """
+
+ permission_classes = [AllowAnyOrReadScope]
+
+ @extend_schema(
+ responses={
+ 200: OpenApiResponse(
+ response=HealthCheckStatusSerializer,
+ description='InvenTree server health status',
+ )
+ }
+ )
+ def get(self, request, *args, **kwargs):
+ """Simple health check endpoint for monitoring purposes.
+
+ Use the root API endpoint for more detailed information (using an authenticated request).
+ """
+ status = (
+ InvenTree.ready.isPluginRegistryLoaded()
+ if settings.PLUGINS_ENABLED
+ else True
+ )
+ return JsonResponse(
+ {'status': 'ok' if status else 'loading'}, status=200 if status else 503
+ )
+
+
selection_urls = [
path(
'/',
@@ -1154,11 +1204,7 @@ common_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=common.models.Attachment),
- name='api-attachment-metadata',
- ),
+ meta_path(common.models.Attachment),
path('', AttachmentDetail.as_view(), name='api-attachment-detail'),
]),
),
@@ -1175,13 +1221,7 @@ common_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(
- model=common.models.ParameterTemplate
- ),
- name='api-parameter-template-metadata',
- ),
+ meta_path(common.models.ParameterTemplate),
path(
'',
ParameterTemplateDetail.as_view(),
@@ -1199,11 +1239,7 @@ common_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=common.models.Parameter),
- name='api-parameter-metadata',
- ),
+ meta_path(common.models.Parameter),
path('', ParameterDetail.as_view(), name='api-parameter-detail'),
]),
),
@@ -1217,6 +1253,22 @@ common_api_urls = [
path('', ErrorMessageList.as_view(), name='api-error-list'),
]),
),
+ # Metadata
+ path(
+ 'metadata/',
+ include([
+ path(
+ '///',
+ GenericMetadataView.as_view(),
+ name='api-generic-metadata',
+ ),
+ path(
+ '//',
+ SimpleGenericMetadataView.as_view(),
+ name='api-generic-metadata',
+ ),
+ ]),
+ ),
# Project codes
path(
'project-code/',
@@ -1224,14 +1276,7 @@ common_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(
- model=common.models.ProjectCode,
- permission_classes=[IsStaffOrReadOnlyScope],
- ),
- name='api-project-code-metadata',
- ),
+ meta_path(common.models.ProjectCode),
path(
'', ProjectCodeDetail.as_view(), name='api-project-code-detail'
),
@@ -1345,6 +1390,11 @@ common_api_urls = [
path('', DataOutputList.as_view(), name='api-data-output-list'),
]),
),
+ # System APIs (related to basic system functions)
+ path(
+ 'system/',
+ include([path('health/', HealthCheckView.as_view(), name='api-system-health')]),
+ ),
]
admin_api_urls = [
diff --git a/src/backend/InvenTree/common/models.py b/src/backend/InvenTree/common/models.py
index 6e1dbd2e5f..e0f8ef34f5 100644
--- a/src/backend/InvenTree/common/models.py
+++ b/src/backend/InvenTree/common/models.py
@@ -970,6 +970,22 @@ class BaseInvenTreeSetting(models.Model):
return setting.get('model', None)
+ def confirm(self) -> bool:
+ """Return if this setting requires confirmation on change."""
+ setting = self.get_setting_definition(
+ self.key, **self.get_filters_for_instance()
+ )
+
+ return setting.get('confirm', False)
+
+ def confirm_text(self) -> str:
+ """Return the confirmation text for this setting, if provided."""
+ setting = self.get_setting_definition(
+ self.key, **self.get_filters_for_instance()
+ )
+
+ return setting.get('confirm_text', '')
+
def model_filters(self) -> Optional[dict]:
"""Return the model filters associated with this setting."""
setting = self.get_setting_definition(
diff --git a/src/backend/InvenTree/common/notifications.py b/src/backend/InvenTree/common/notifications.py
index bae8fe913a..880b5ba64e 100644
--- a/src/backend/InvenTree/common/notifications.py
+++ b/src/backend/InvenTree/common/notifications.py
@@ -177,9 +177,9 @@ def trigger_notification(obj: Model, category: str = '', obj_ref: str = 'pk', **
# Filter out any users who are inactive, or do not have the required model permissions
valid_users = list(
filter(
- lambda u: u
- and u.is_active
- and (not obj or check_user_permission(u, obj, 'view')),
+ lambda u: (
+ u and u.is_active and (not obj or check_user_permission(u, obj, 'view'))
+ ),
list(target_users),
)
)
diff --git a/src/backend/InvenTree/common/serializers.py b/src/backend/InvenTree/common/serializers.py
index d2fee07132..ae4278a3d1 100644
--- a/src/backend/InvenTree/common/serializers.py
+++ b/src/backend/InvenTree/common/serializers.py
@@ -88,6 +88,18 @@ class SettingsSerializer(InvenTreeModelSerializer):
choices = serializers.SerializerMethodField()
+ def get_choices(self, obj) -> list:
+ """Returns the choices available for a given item."""
+ results = []
+
+ choices = obj.choices()
+
+ if choices:
+ for choice in choices:
+ results.append({'value': choice[0], 'display_name': choice[1]})
+
+ return results
+
model_name = serializers.CharField(read_only=True, allow_null=True)
model_filters = serializers.DictField(read_only=True)
@@ -108,17 +120,26 @@ class SettingsSerializer(InvenTreeModelSerializer):
typ = serializers.CharField(read_only=True)
- def get_choices(self, obj) -> list:
- """Returns the choices available for a given item."""
- results = []
+ confirm = serializers.BooleanField(
+ read_only=True,
+ help_text=_('Indicates if changing this setting requires confirmation'),
+ )
- choices = obj.choices()
+ confirm_text = serializers.CharField(read_only=True)
- if choices:
- for choice in choices:
- results.append({'value': choice[0], 'display_name': choice[1]})
-
- return results
+ def is_valid(self, *, raise_exception=False):
+ """Validate the setting, including confirmation if required."""
+ ret = super().is_valid(raise_exception=raise_exception)
+ # Check if confirmation was provided if required
+ if self.instance.confirm():
+ req_data = self.context['request'].data
+ if not 'manual_confirm' in req_data or not req_data['manual_confirm']:
+ raise serializers.ValidationError({
+ 'manual_confirm': _(
+ 'This setting requires confirmation before changing. Please confirm the change.'
+ )
+ })
+ return ret
class GlobalSettingsSerializer(SettingsSerializer):
@@ -141,6 +162,8 @@ class GlobalSettingsSerializer(SettingsSerializer):
'api_url',
'typ',
'read_only',
+ 'confirm',
+ 'confirm_text',
]
read_only = serializers.SerializerMethodField(
@@ -184,6 +207,8 @@ class UserSettingsSerializer(SettingsSerializer):
'model_name',
'api_url',
'typ',
+ 'confirm',
+ 'confirm_text',
]
user = serializers.PrimaryKeyRelatedField(read_only=True)
@@ -232,6 +257,8 @@ class GenericReferencedSettingSerializer(SettingsSerializer):
'typ',
'units',
'required',
+ 'confirm',
+ 'confirm_text',
]
# set Meta class
@@ -808,7 +835,9 @@ class ParameterSerializer(
)
updated_by_detail = enable_filter(
- UserSerializer(source='updated_by', read_only=True, many=False),
+ UserSerializer(
+ source='updated_by', read_only=True, allow_null=True, many=False
+ ),
True,
prefetch_fields=['updated_by'],
)
diff --git a/src/backend/InvenTree/common/setting/system.py b/src/backend/InvenTree/common/setting/system.py
index 087e494400..a216b5d1f5 100644
--- a/src/backend/InvenTree/common/setting/system.py
+++ b/src/backend/InvenTree/common/setting/system.py
@@ -106,6 +106,20 @@ def reload_plugin_registry(setting):
registry.reload_plugins(full_reload=True, force_reload=True, collect=True)
+def enforce_mfa(setting):
+ """Enforce multifactor authentication for all users."""
+ from allauth.usersessions.models import UserSession
+
+ from common.models import logger
+
+ logger.info(
+ 'Enforcing multifactor authentication for all users by signing out all sessions.'
+ )
+ for session in UserSession.objects.all():
+ session.end()
+ logger.info('All user sessions have been ended.')
+
+
def barcode_plugins() -> list:
"""Return a list of plugin choices which can be used for barcode generation."""
try:
@@ -1007,6 +1021,11 @@ SYSTEM_SETTINGS: dict[str, InvenTreeSettingsKeyType] = {
'description': _('Users must use multifactor security.'),
'default': False,
'validator': bool,
+ 'confirm': True,
+ 'confirm_text': _(
+ 'Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately.'
+ ),
+ 'after_save': enforce_mfa,
},
'PLUGIN_ON_STARTUP': {
'name': _('Check plugins on startup'),
diff --git a/src/backend/InvenTree/common/setting/type.py b/src/backend/InvenTree/common/setting/type.py
index 5ec029f998..1971533663 100644
--- a/src/backend/InvenTree/common/setting/type.py
+++ b/src/backend/InvenTree/common/setting/type.py
@@ -32,6 +32,8 @@ class SettingsKeyType(TypedDict, total=False):
protected: Protected values are not returned to the client, instead "***" is returned (optional, default: False)
required: Is this setting required to work, can be used in combination with .check_all_settings(...) (optional, default: False)
model: Auto create a dropdown menu to select an associated model instance (e.g. 'company.company', 'auth.user' and 'auth.group' are possible too, optional)
+ confirm: Require an explicit confirmation before changing the setting (optional, default: False)
+ confirm_text: Text to display in the confirmation dialog (optional)
"""
name: str
@@ -46,6 +48,8 @@ class SettingsKeyType(TypedDict, total=False):
protected: bool
required: bool
model: str
+ confirm: bool
+ confirm_text: str
class InvenTreeSettingsKeyType(SettingsKeyType):
diff --git a/src/backend/InvenTree/common/tests.py b/src/backend/InvenTree/common/tests.py
index 4cc16136bd..7df489209a 100644
--- a/src/backend/InvenTree/common/tests.py
+++ b/src/backend/InvenTree/common/tests.py
@@ -408,6 +408,8 @@ class SettingsTest(InvenTreeTestCase):
'requires_restart',
'after_save',
'before_save',
+ 'confirm',
+ 'confirm_text',
]
for k in setting:
@@ -641,6 +643,18 @@ class GlobalSettingsApiTest(InvenTreeAPITestCase):
setting.refresh_from_db()
self.assertEqual(setting.value, val)
+ def test_mfa_change(self):
+ """Test that changes in LOGIN_ENFORCE_MFA are handled correctly."""
+ # Setup admin users
+ self.user.usersession_set.create(ip='192.168.1.1')
+ self.assertEqual(self.user.usersession_set.count(), 1)
+
+ # Enable enforced MFA
+ set_global_setting('LOGIN_ENFORCE_MFA', True)
+
+ # There should be no user sessions now
+ self.assertEqual(self.user.usersession_set.count(), 0)
+
def test_api_detail(self):
"""Test that we can access the detail view for a setting based on the ."""
# These keys are invalid, and should return 404
@@ -1471,6 +1485,35 @@ class CommonTest(InvenTreeAPITestCase):
self.user.is_superuser = False
self.user.save()
+ def test_health_api(self):
+ """Test health check URL."""
+ from plugin import registry
+
+ # Fully started system - ok
+ response_data = self.get(reverse('api-system-health'), expected_code=200).json()
+ self.assertIn('status', response_data)
+ self.assertEqual(response_data['status'], 'ok')
+
+ # Simulate plugin reloading - Not ready
+ try:
+ registry.plugins_loaded = False
+ response_data = self.get(
+ reverse('api-system-health'), expected_code=503
+ ).json()
+ self.assertIn('status', response_data)
+ self.assertEqual(response_data['status'], 'loading')
+ finally:
+ registry.plugins_loaded = True
+
+ # No plugins enabled - still ok
+ with self.settings(PLUGINS_ENABLED=False):
+ self.assertEqual(
+ self.get(reverse('api-system-health'), expected_code=200).json()[
+ 'status'
+ ],
+ 'ok',
+ )
+
class CurrencyAPITests(InvenTreeAPITestCase):
"""Unit tests for the currency exchange API endpoints."""
diff --git a/src/backend/InvenTree/company/api.py b/src/backend/InvenTree/company/api.py
index 8ec8a4ae14..cc58b4096f 100644
--- a/src/backend/InvenTree/company/api.py
+++ b/src/backend/InvenTree/company/api.py
@@ -9,7 +9,7 @@ from django_filters.rest_framework.filterset import FilterSet
import part.models
from data_exporter.mixins import DataExportViewMixin
-from InvenTree.api import ListCreateDestroyAPIView, MetadataView, ParameterListMixin
+from InvenTree.api import ListCreateDestroyAPIView, ParameterListMixin, meta_path
from InvenTree.fields import InvenTreeOutputOption, OutputConfiguration
from InvenTree.filters import SEARCH_ORDER_FILTER, SEARCH_ORDER_FILTER_ALIAS
from InvenTree.mixins import (
@@ -447,7 +447,11 @@ class SupplierPriceBreakOutputOptions(OutputConfiguration):
class SupplierPriceBreakList(
- SupplierPriceBreakMixin, SerializerContextMixin, OutputOptionsMixin, ListCreateAPI
+ DataExportViewMixin,
+ SupplierPriceBreakMixin,
+ SerializerContextMixin,
+ OutputOptionsMixin,
+ ListCreateAPI,
):
"""API endpoint for list view of SupplierPriceBreak object.
@@ -476,11 +480,7 @@ manufacturer_part_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=ManufacturerPart),
- name='api-manufacturer-part-metadata',
- ),
+ meta_path(ManufacturerPart),
path(
'',
ManufacturerPartDetail.as_view(),
@@ -497,11 +497,7 @@ supplier_part_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=SupplierPart),
- name='api-supplier-part-metadata',
- ),
+ meta_path(SupplierPart),
path('', SupplierPartDetail.as_view(), name='api-supplier-part-detail'),
]),
),
@@ -532,11 +528,7 @@ company_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=Company),
- name='api-company-metadata',
- ),
+ meta_path(Company),
path('', CompanyDetail.as_view(), name='api-company-detail'),
]),
),
@@ -546,11 +538,7 @@ company_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=Contact),
- name='api-contact-metadata',
- ),
+ meta_path(Contact),
path('', ContactDetail.as_view(), name='api-contact-detail'),
]),
),
diff --git a/src/backend/InvenTree/company/serializers.py b/src/backend/InvenTree/company/serializers.py
index b3c936ae49..ef12834e38 100644
--- a/src/backend/InvenTree/company/serializers.py
+++ b/src/backend/InvenTree/company/serializers.py
@@ -268,11 +268,7 @@ class ManufacturerPartSerializer(
source='part', many=False, read_only=True, allow_null=True
),
True,
- prefetch_fields=[
- Prefetch(
- 'part', queryset=part.models.Part.objects.select_related('pricing_data')
- )
- ],
+ prefetch_fields=['part', 'part__pricing_data', 'part__category'],
)
pretty_name = enable_filter(
@@ -438,7 +434,7 @@ class SupplierPartSerializer(
label=_('Part'), source='part', many=False, read_only=True, allow_null=True
),
False,
- prefetch_fields=['part'],
+ prefetch_fields=['part', 'part__pricing_data'],
)
supplier_detail = enable_filter(
@@ -544,8 +540,8 @@ class SupplierPartSerializer(
@register_importer()
class SupplierPriceBreakSerializer(
- SupplierPriceBreakBriefSerializer,
DataImportExportSerializerMixin,
+ SupplierPriceBreakBriefSerializer,
InvenTreeModelSerializer,
):
"""Serializer for SupplierPriceBreak object.
diff --git a/src/backend/InvenTree/company/test_api.py b/src/backend/InvenTree/company/test_api.py
index 3599160d93..8ff721f123 100644
--- a/src/backend/InvenTree/company/test_api.py
+++ b/src/backend/InvenTree/company/test_api.py
@@ -505,7 +505,9 @@ class ManufacturerTest(InvenTreeAPITestCase):
def test_manufacturer_part_detail(self):
"""Tests for the ManufacturerPart detail endpoint."""
- url = reverse('api-manufacturer-part-detail', kwargs={'pk': 1})
+ mp = ManufacturerPart.objects.first()
+
+ url = reverse('api-manufacturer-part-detail', kwargs={'pk': mp.pk})
response = self.get(url)
self.assertEqual(response.data['MPN'], 'MPN123')
@@ -747,58 +749,6 @@ class SupplierPartTest(InvenTreeAPITestCase):
)
-class CompanyMetadataAPITest(InvenTreeAPITestCase):
- """Unit tests for the various metadata endpoints of API."""
-
- fixtures = [
- 'category',
- 'part',
- 'location',
- 'company',
- 'contact',
- 'manufacturer_part',
- 'supplier_part',
- ]
-
- roles = ['company.change', 'purchase_order.change', 'part.change']
-
- def metatester(self, apikey, model):
- """Generic tester."""
- modeldata = model.objects.first()
-
- # Useless test unless a model object is found
- self.assertIsNotNone(modeldata)
-
- url = reverse(apikey, kwargs={'pk': modeldata.pk})
-
- # Metadata is initially null
- self.assertIsNone(modeldata.metadata)
-
- numstr = f'12{len(apikey)}'
-
- self.patch(
- url,
- {'metadata': {f'abc-{numstr}': f'xyz-{apikey}-{numstr}'}},
- expected_code=200,
- )
-
- # Refresh
- modeldata.refresh_from_db()
- self.assertEqual(
- modeldata.get_metadata(f'abc-{numstr}'), f'xyz-{apikey}-{numstr}'
- )
-
- def test_metadata(self):
- """Test all endpoints."""
- for apikey, model in {
- 'api-manufacturer-part-metadata': ManufacturerPart,
- 'api-supplier-part-metadata': SupplierPart,
- 'api-company-metadata': Company,
- 'api-contact-metadata': Contact,
- }.items():
- self.metatester(apikey, model)
-
-
class SupplierPriceBreakAPITest(InvenTreeAPITestCase):
"""Unit tests for the SupplierPart price break API."""
diff --git a/src/backend/InvenTree/data_exporter/mixins.py b/src/backend/InvenTree/data_exporter/mixins.py
index 316dfdfbce..4b373dcf51 100644
--- a/src/backend/InvenTree/data_exporter/mixins.py
+++ b/src/backend/InvenTree/data_exporter/mixins.py
@@ -337,6 +337,12 @@ class DataExportViewMixin:
# Update the output instance with the total number of items to export
output.total = queryset.count()
output.save()
+ request = context.get('request', None)
+
+ if request:
+ query_params = getattr(request, 'query_params', {})
+ context.update(**query_params)
+ context['request'] = request
data = None
serializer = serializer_class(context=context, exporting=True)
@@ -363,7 +369,12 @@ class DataExportViewMixin:
# The returned data *must* be a list of dict objects
try:
data = export_plugin.export_data(
- queryset, serializer_class, headers, export_context, output
+ queryset,
+ serializer_class,
+ headers,
+ export_context,
+ output,
+ serializer_context=context,
)
except Exception as e:
diff --git a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po
index 46d379db99..4cbe02125b 100644
--- a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:37\n"
"Last-Translator: \n"
"Language-Team: Arabic\n"
"Language: ar_SA\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "نقطة نهاية API غير موجودة"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "المستخدم ليس لديه الصلاحية لعرض هذا النموذج"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "تعذّر تحويل {original} إلى {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "الكمية المقدمة غير صحيحة"
@@ -112,13 +112,13 @@ msgstr "أدخل التاريخ"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "ملاحظات"
@@ -171,35 +171,35 @@ msgstr "إزالة علامات HTML من هذه القيمة"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "خطأ فى الاتصال"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "البريد الإلكتروني"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr ""
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr ""
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr ""
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po
index e93e5251a6..99e9f9e8a6 100644
--- a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:37\n"
"Last-Translator: \n"
"Language-Team: Bulgarian\n"
"Language: bg_BG\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Не е намерена крайна точка на API"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Елементите трябва да се предоставят, като списък"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Филтрите следва да се предоставят, като dict"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Потребителя няма нужното разрешение, за да вижда този модел"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Преобразуването на {original} в {unit} не беше успешно"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Въведена е недопустима стойност"
@@ -112,13 +112,13 @@ msgstr "Въведи дата"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Бележки"
@@ -171,35 +171,35 @@ msgstr "Премахнете HTML маркерите от тази стойно
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Грешка при съединението"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Сървърът отговари с невалиден статусен код"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Възникна изключение"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Сървърът отговори с невалидна стойност за дължината на съдържанието (Content-Length)"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Размерът на изображението е твърде голям"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Сваляното на изображение превиши максималния размер"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Отдалеченият сървър върна празен отговор"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr ""
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Трябва да активирате двойно оторизиране преди да направите, каквото и да е."
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr ""
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr ""
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr ""
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Част"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Потребител"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Цялостна наличност"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Място в склада"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Места в склада"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po
index f91c06515f..d4c324a4dd 100644
--- a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Czech\n"
"Language: cs_CZ\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API endpoint nebyl nalezen"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Seznam položek nebo filtrů musí být k dispozici pro hromadnou operaci"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Položky musí být uvedeny jako seznam"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Zadán neplatný seznam položek"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Filtry musí být uvedeny jako slovník"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Poskytnuty neplatné filtry"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Všechny filtry musí být použity s Pravda"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Zadaným kritériím neodpovídají žádné položky"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Nebyla poskytnuta žádná data"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr "Toto pole musí být unikátní."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Uživatel nemá právo zobrazit tento model"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Nelze převést {original} na {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Vyplněno neplatné množství"
@@ -112,13 +112,13 @@ msgstr "Zadejte datum"
msgid "Invalid decimal value"
msgstr "Neplaté desetinné číslo"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Poznámky"
@@ -171,35 +171,35 @@ msgstr "Odstranit HTML tagy z této hodnoty"
msgid "Data contains prohibited markdown content"
msgstr "Data obsahují zakázaný markdown obsah"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Chyba spojení"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Server odpověděl s neplatným stavovým kódem"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Došlo k výjimce"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Server odpověděl s neplatnou hodnotou Content-Length"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Velikost obrázku je příliš velká"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Stahování obrázku překročilo maximální velikost"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Vzdálený server vrátil prázdnou odpověď"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Zadaná URL adresa není platný soubor obrázku"
@@ -207,11 +207,11 @@ msgstr "Zadaná URL adresa není platný soubor obrázku"
msgid "Log in to the app"
msgstr "Přihlásit se do aplikace"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Před tím, než budete dělat cokoli jiného, musíte zapnout dvoufaktorové ověřování."
@@ -255,133 +255,133 @@ msgstr "Referenční číslo musí odpovídat požadovanému vzoru"
msgid "Reference number is too large"
msgstr "Referenční číslo je příliš velké"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Neplatný výběr"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Název"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Popis"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Popis (volitelně)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Cesta"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Duplicitní názvy nemohou existovat pod stejným nadřazeným názvem"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Poznámky (volitelné)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Data čárového kódu"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Data čárového kódu třetí strany"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash čárového kódu"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Jedinečný hash dat čárového kódu"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Nalezen existující čárový kód"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Selhání úlohy"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Úloha na pozadí '{f}' se ani po {n} pokusech nezdařila"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Chyba serveru"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Server zaznamenal chybu."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Obrazek"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Musí být platné číslo"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Měna"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Vyberte měnu z dostupných možností"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr "Toto pole nesmí být nulové."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Neplatná hodnota"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Vzdálený obraz"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL souboru vzdáleného obrázku"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Stahování obrázků ze vzdálené URL není povoleno"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Nepodařilo se stáhnout obrázek ze vzdálené adresy URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr "Neplatný formát typu obsahu"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr "Typ obsahu nenalezen"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr "Typ obsahu neodpovídá požadované třídě mixinu"
@@ -553,8 +553,8 @@ msgstr "Neplatná fyzikální jednotka"
msgid "Not a valid currency code"
msgstr "Neplatný kód měny"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Stav objednávky"
@@ -562,21 +562,21 @@ msgstr "Stav objednávky"
msgid "Parent Build"
msgstr "Nadřazená sestava"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Zahrnout varianty"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Zahrnout varianty"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Zahrnout varianty"
msgid "Part"
msgstr "Díl"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategorie"
@@ -666,80 +666,80 @@ msgstr "Max datum"
msgid "Exclude Tree"
msgstr "Vyloučit strom"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Sestavení musí být zrušeno před odstraněním"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Spotřební materiál"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Volitelné"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Sestava"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Sledováno"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testovatelné"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Objednávka nevyřízená"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Přiděleno"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Spotřebováno"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Dostupné"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Na objednávku"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Výrobní příkaz"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Lokace"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Výstup"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "Filtrovat podle ID výstupní položky zásoby. Použijte 'null' pro nalezení odinstalovaných položek sestavení."
@@ -779,9 +779,9 @@ msgstr "Cílové datum musí být po datu zahájení"
msgid "Build Order Reference"
msgstr "Referenční číslo výrobního příkazu"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referenční číslo prodejní objednávky"
msgid "SalesOrder to which this build is allocated"
msgstr "Prodejní objednávka, které je tento výrobní příkaz přidělen"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Zdrojové umístění"
@@ -857,17 +857,17 @@ msgstr "Stav sestavení"
msgid "Build status code"
msgstr "Stavový kód sestavení"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Kód dávky"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Dávkový kód pro tento výstup sestavení"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Datum vytvoření"
@@ -887,7 +887,7 @@ msgstr "Cílové datum dokončení"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Cílové datum dokončení sestavení. Sestavení bude po tomto datu v prodlení."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Datum dokončení"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Uživatel, který vystavil tento výrobní příkaz"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Odpovědný"
@@ -913,12 +913,12 @@ msgstr "Odpovědný"
msgid "User or group responsible for this build order"
msgstr "Uživatel nebo skupina odpovědná za tento výrobní příkaz"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Externí odkaz"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Odkaz na externí URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Priorita tohoto výrobního příkazu"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Kód projektu"
@@ -960,7 +960,7 @@ msgstr "Výrobní příkaz {build} byl dokončen"
msgid "A build order has been completed"
msgstr "Výrobní příkaz byl dokončen"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "U sledovatelných dílů musí být uvedena sériová čísla"
@@ -976,23 +976,23 @@ msgstr "Výstup sestavení je již dokončen"
msgid "Build output does not match Build Order"
msgstr "Výstup neodpovídá výrobnímu příkazu"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Množství musí být vyšší než nula"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Množství nemůže být větší než výstupní množství"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "Výstup výroby neprošel všemi požadovanými testy"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Výstup sestavy {serial} neprošel všemi požadavky"
@@ -1001,18 +1001,18 @@ msgstr "Výstup sestavy {serial} neprošel všemi požadavky"
msgid "Cannot partially complete a build output with allocated items"
msgstr "Nelze částečně dokončit výrobní příkaz s přiřazenými položkami"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Řádková položka výrobního příkazu"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Vytvořit objekt"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Vytvořit objekt"
msgid "Quantity"
msgstr "Množství"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Vyžadované množství pro výrobní příkaz"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Množství spotřebovaných zásob"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Položka sestavení musí specifikovat výstup sestavení, protože hlavní díl je označen jako sledovatelný"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Vybraná skladová položka neodpovídá řádku kusovníku"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr "Přiřazené množství musí být vyšší než nula"
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Množství musí být 1 pro zřetězený sklad"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Zabrané množství ({q}) nesmí překročit dostupné skladové množství ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Skladová položka je nadměrně zabrána"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Zabrané množství musí být větší než nula"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Množství musí být 1 pro zřetězený sklad"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Vybraná skladová položka neodpovídá řádku kusovníku"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Přidělené množství přesahuje dostupné množství na skladě"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Skladové položky"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Zdrojová skladová položka"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Skladové množství pro sestavení"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Instalovat do"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Cílová skladová položka"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Úroveň sestavení"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Název dílu"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Popisek kódu projektu"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Vytvořit výstup"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Vytvořený výstup neodpovídá nadřazenému sestavení"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Výstupní díl se neshoduje s dílem výrobního příkazu"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Výstup sestavení je již dokončen"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Tento stavební výstup není plně přiřazen"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Zadejte množství pro výstup sestavení"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Celé množství požadované pro sledovatelné díly"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Je vyžadována celočíselná hodnota množství, protože kusovník obsahuje sledovatelné díly"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Sériová čísla"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Zadejte sériová čísla pro sestavení výstupů"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Skladové umístění pro výstup sestavy"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Automaticky zvolit sériová čísla"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Automaticky přidělit požadované položky s odpovídajícími sériovými čísly"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Následující sériová čísla již existují nebo jsou neplatná"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Musí být uveden seznam výstupů sestavy"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Skladové umístění pro sešrotované výstupy"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Zahodit alokace"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Vyřadit všechny přidělené zásoby pro vyřazené výstupy"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Důvod vyřazení výstupu(ů) sestavy"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Umístění dokončených výstupů sestavy"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Přijmout neúplné přidělení"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Dokončit výstupy pokud zásoby nebyly plně přiděleny"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Spotřebovat přidělené zásoby"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Spotřebovat všechny zásoby, které již byly přiděleny této sestavě"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Odstranit neúplné výstupy"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Odstranit všechny výstupy sestavy, které nebyly dokončeny"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Není povoleno"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Přijmout jako spotřebované tímto výrobním příkazem"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Uvolnit před dokončením tohoto výrobního příkazu"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Nadměrně přidělené zásoby"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Jak chcete zacházet s extra skladovými položkami přiřazenými k tomuto výrobnímu příkazu"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Některé skladové položky byly nadměrně přiděleny"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Přijmout nepřidělené"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Přijmout, že skladové položky nebyly plně přiřazeny k tomuto výrobnímu příkazu"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Požadované zásoby nebyly plně přiděleny"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Přijmout neúplné"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Přijmout, že nebyl dokončen požadovaný počet výstupů sestavy"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Požadované množství sestavy nebylo dokončeno"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Výrobní příkaz má otevřené podpříkazy"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Výrobní příkaz musí být ve stavu produkce"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Výrobní příkaz má neúplné výstupy"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Linka sestavy"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Výstup sestavy"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Výstup sestavy musí odkazovat na stejnou sestavu"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Řádková položka sestavy"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part musí ukazovat na stejný díl jako výrobní příkaz"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Položka musí být skladem"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Dostupné množství ({q}) překročeno"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Pro přidělení sledovaných dílů musí být zadán výstup sestavy"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Výstup sestavy nelze zadat pro přidělení nesledovaných dílů"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Položky přidělení musí být poskytnuty"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Skladové místo, odkud se mají díly odebírat (ponechte prázdné, pokud chcete odebírat z libovolného místa)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Vynechat lokace"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Vyloučit skladové položky z tohoto vybraného umístění"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Zaměnitelné zásoby"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Skladové položky na více místech lze používat zaměnitelně"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Náhradní zásoby"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Povolit přidělování náhradních dílů"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Volitelné položky"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Přiřazení volitelných položek kusovníku k objednávce sestavy"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Nepodařilo se spustit úlohu automatického přidělování"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Reference v kusovníku"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID dílu kusovníku"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Název dílu kusovníku"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Sestavení"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Díl dodavatele"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Přidělené množství"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Reference sestavení"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Název kategorie dílů"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Sledovatelné"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Zděděno"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Povolit varianty"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Položka kusovníku"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Ve výrobě"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Naplánováno na sestavení"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Externí zásoby"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Dostupné zásoby"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Dostupné náhradní zásoby"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Dostupná varianta skladu"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "Spotřebované množství přesahuje přidělené množství"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Nepovinné poznámky ke spotřebě zásob"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "Sestavení položky musí odkazovat na správný výrobní příkaz"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Duplikovat přidělení položky sestavení"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "Výrobní linka musí odkazovat na správný výrobní příkaz"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Duplikovat přiřazení výrobní linky"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Musí být poskytnuta alespoň jedna linka nebo předmět"
@@ -1498,19 +1490,19 @@ msgstr "Opožděný výrobní příkaz"
msgid "Build order {bo} is now overdue"
msgstr "Objednávka sestavy {bo} je nyní opožděná"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Je odkaz"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Je soubor"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Uživatel nemá oprávnění k odstranění těchto příloh"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Uživatel nemá oprávnění k odstranění této přílohy"
@@ -1530,7 +1522,11 @@ msgstr "Nejsou uvedeny žádné platné kódy měn"
msgid "No plugin"
msgstr "Žádný plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Popisek kódu projektu"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Aktualizováno"
@@ -1558,7 +1554,7 @@ msgstr "Popis projektu"
msgid "User or group responsible for this project"
msgstr "Uživatel nebo skupina odpovědná za tento projekt"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Tlačítko nastavení"
@@ -1590,550 +1586,550 @@ msgstr "Hodnota neprošla kontrolou platnosti"
msgid "Key string must be unique"
msgstr "Klíčový text musí být jedinečný"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Uživatel"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Množství cenové slevy"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Cena"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Jednotková cena při stanoveném množství"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Koncový bod"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Koncový bod, ve kterém je tento webhook přijímán"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Název tohoto webhooku"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktivní"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Je tento webhook aktivní"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token pro přístup"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Tajný klíč"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Sdílený tajný klíč pro HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID zprávy"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Unikátní identifikátor pro tuto zprávu"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Hostitel"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Hostitel, od kterého byla tato zpráva přijata"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Záhlaví"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Záhlaví této zprávy"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Tělo"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Tělo zprávy"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Koncový bod, na kterém byla zpráva přijata"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Pracoval na"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Byla práce na této zprávě dokončena?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "ID"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Název"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Odkaz"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Zveřejněno"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Souhrn"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Přečteno"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Byla tato novinka přečtena?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Soubor obrázku"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Cílový typ modelu pro tento obrázek"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "Cílové ID modelu pro tento obrázek"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Vlastní jednotka"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Symbol jednotky musí být unikátní"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Název jednotky musí být platný identifikátor"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Název jednotky"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Volitelný symbol jednotky"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definice"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definice jednotky"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Příloha"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Chybějící soubor"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Chybějící externí odkaz"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Typ modelu"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Cílový typ modelu pro obrázek"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Vyberte soubor k přiložení"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Komentář"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Komentář přílohy"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Datum nahrání"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Datum, kdy byl soubor nahrán"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Velikost souboru"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Velikost souboru v bytech"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Uveden neplatný typ modelu pro přílohu"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Vlastní stav"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Vlastní stavy"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Nastavení referenčního stavu"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Stav nastavený, který je prodloužen tímto vlastním stavem"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Logický klíč"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Logický klíč statusu, který je rovný tomuto vlastnímu statusu v podnikové logice"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Hodnota"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Číselná hodnota, která bude uložena v databázi modelů"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Název stavu"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Popisek"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Štítek, který bude zobrazen na webu"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Barva"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Barva, která bude zobrazena ve frontendu"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Model, ke kterému je tento stav přiřazen"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Musí být vybrán model"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Musí být vybrán klíč"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Musí být vybrán logický klíč"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Klíč se musí lišit od logického klíče"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Musí být uvedena platná referenční třída statusu"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Klíč se musí lišit od logických klíčů referenčního statusu"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Název se musí lišit od názvů referenčního statusu"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Výběrové pole"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Výběrová pole"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Název výběrového pole"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Popis výběrového pole"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Uzamčeno"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Je tento seznam výběrů uzamčen?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Může být tento seznam výběru použit?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Zdrojový plugin"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Plugin, který poskytuje seznam výběru"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Zdrojový řetězec"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Volitelný řetězec identifikující zdroj použitý pro tento seznam"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Výchozí položka"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Výchozí položka pro tento seznam výběru"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Vytvořeno"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Datum a čas vytvoření výběrového seznamu"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Poslední aktualizace"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Datum a čas poslední aktualizace výběrového seznamu"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Položka seznamu výběrů"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Položky seznamu výběrů"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Seznam výběru, do kterého tato položka patří"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Název výběrového seznamu"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Popisek pro výběr seznamu"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Popis vstupu výběrového seznamu"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Je tento výběr výběrového listu aktivní?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Šablona parametru"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr "Šablona parametru"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Parametry zaškrtávacího pole nemohou mít jednotky"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Parametry zaškrtávacího pole nemohou mít výběr"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Volby musí být jedinečné"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Název šablony parametru musí být jedinečný"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr "Cílový typ modelu pro šablonu tohoto parametru"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Název parametru"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Jednotky"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Fyzické jednotky pro tento parametr"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Popis parametru"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Zaškrtávací políčko"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Je tento parametr zaškrtávací políčko?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Volby"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Platné volby pro tento parametr (oddělené čárkami)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Seznam výběru pro tento parametr"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Povoleno"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr "Je šablona tohoto parametru povolena?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr "Parametr"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr "Parametry"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Neplatná volba pro hodnotu parametru"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr "Neplatný typ modelu pro daný parametr"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr "ID modelu"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr "ID cílového modelu pro tento parametr"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Šablona"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr "Šablona parametru"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Data"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Hodnota parametru"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Hodnota parametru"
msgid "Note"
msgstr "Poznámka"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Volitelné pole pro poznámku"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Sken čárového kódu"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Data čárového kódu"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Uživatel, který naskenoval čárový kód"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Časová značka"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Datum a čas skenování čárového kódu"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Koncový bod URL, který zpracoval čárový kód"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontext"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Kontextová data pro skenov čárového kódu"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Odpověď"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Data z odezvy z čárového kódu"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Výsledek"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Bylo skenování čárového kódu úspěšné?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Vyskytla se chyba"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: Odstranení Emailového logu je chráněno. Nastavte INVENTREE_PROTECT_EMAIL_LOG na False pro užmožnění odstranění."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "E-mailová zpráva"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "E-mailové zprávy"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Oznámeno"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Odesláno"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Selhalo"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Doručeno"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Potvrzeno"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Příchozí"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Odchozí"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Bez odpovědi"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Sledovat doručení"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Sledovat přečtení"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Sledovat kliknutí"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "Globální ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Identifikátor pro tuto zprávu (může být poskytnut externím systémem)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "ID vlákna"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Identifikátor pro toto vlákno (může být poskytnut externím systémem)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Vlákno"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Vlákno propojeno k této zprávě"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr "Priorita"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Emailové vlákno"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Emailové vlákna"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Klíč"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Unikátní klíč pro toto vlákno (použitý k identifikaci vlákna)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Unikátní identifikátor pro toto vlákno"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Začato interně"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Bylo toto vlákno započato interně?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Datum a čas kdy bylo vlákno vytvořeno"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Datum a čas kdy bylo vlákno naposledy aktualizováno"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} zrušeno"
msgid "A order that is assigned to you was canceled"
msgstr "Objednávka, která je vám přidělena, byla zrušena"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Přijaté položky"
@@ -2351,93 +2347,101 @@ msgstr "Položky byly obdrženy proti objednávce"
msgid "Items have been received against a return order"
msgstr "Položky byly obdrženy proti vratce"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr "Označuje, zda změna tohoto nastavení vyžaduje potvrzení"
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr "Toto nastavení vyžaduje potvrzení před změnou. Prosím potvrďte změnu."
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Indikuje zdali bylo nastavení přepsáno proměnou prostředí"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Přepsat"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Je spuštěné"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Čekající úkoly"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Naplánované úlohy"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Neúspěšné úlohy"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID úlohy"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Unikátní ID úlohy"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Zamknout"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Čas uzamčení"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Jméno úkolu"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funkce"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Název funkce"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumenty"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumenty úlohy"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Argumenty klíčových slov"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Argumenty klíčových slov úlohy"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Název souboru"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Typ modelu"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Uživatel nemá oprávnění k vytváření nebo úpravám příloh pro tento model"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr "Uživatel nemá práva vytvářet nebo upravovat parametry pro tento model"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Tento výběr je uzamčen"
@@ -2445,1128 +2449,1132 @@ msgstr "Tento výběr je uzamčen"
msgid "No group"
msgstr "Žádná skupina"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Adresa URL webu je uzamčena konfigurací"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Je vyžadován restart"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Bylo změněno nastavení, které vyžaduje restart serveru"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Nevyřízené migrace"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Počet nevyřízených migrací databáze"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Aktivní varovací kódy"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Seznam aktivních varovacích kódů"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "ID instance"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Unikátní identifikátor pro tuto InvenTree instanci"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "ID oznámení"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Oznámit ID instance pro server na server status infu (nepřihlášeno)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Název instance serveru"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Textový popisovač pro instanci serveru"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Použít název instance"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Použít název instance v liště"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Omezit zobrazování `o aplikaci`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Zobrazovat okno `o aplikaci` pouze superuživatelům"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Jméno společnosti"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Interní název společnosti"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Základní URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Základní URL pro instanci serveru"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Výchozí měna"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Vyberte základní měnu pro cenové kalkulace"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Podporované měny"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Seznam podporovaných kódů měn"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Interval aktualizace měny"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Jak často aktualizovat směnné kurzy (pro vypnutí nastavte na nulu)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dny"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Plugin aktualizace měny"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Plugin pro aktualizaci měn k použití"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Stáhnout z URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Povolit stahování vzdálených obrázků a souborů z externích URL"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Limit velikosti stahování"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maximální povolená velikost stahování vzdáleného obrázku"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-agent použitý ke stažení z adresy URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Povolit přepsání user-agenta používaného ke stahování obrázků a souborů z externí adresy URL (ponechte prázdné pro výchozí)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Přísná validace URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Vyžadovat specifikaci schématu při ověřování adres URL"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Interval kontroly aktualizací"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Jak často kontrolovat aktualizace (nastavte na nulu pro vypnutí)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatické Zálohování"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Povolit automatické zálohování databáze a mediálních souborů"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Interval automatického zálohování"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Zadejte počet dní mezi automatickými zálohovými událostmi"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Interval mazání úloh"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Výsledky úloh na pozadí budou odstraněny po zadaném počtu dní"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Interval odstranění protokolu chyb"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Záznamy chyb budou odstraněny po zadaném počtu dní"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Interval pro odstranění oznámení"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Uživatelská oznámení budou smazána po zadaném počtu dní"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Interval mazání emailů"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "Emailové zprávy budou odstraněny po specifikovaném počtu dní"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Chránit Email log"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Zabránit odstranění vstupů email logů"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Podpora čárových kódů"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Povolit podporu pro skenování čárových kódů ve webovém rozhraní"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Ukládat výsledky čárových kódů"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Ukládat výsledky skenování čárových kódů v databázi"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Maximální počet naskenovaných čárových kódů"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Maximální počet uložených výsledků skenování čárových kódů"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Zpoždění vstupu čárového kódu"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Doba zpoždění zpracování vstupu čárového kódu"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Podpora webové kamery pro čárové kódy"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Povolit skenování čárových kódů přes webovou kameru v prohlížeči"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Zobrazovat data čárových kódů"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Zobrazovat data čárových kódů v prohlížeči jako text"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Plugin pro generování čárových kódů"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Plugin na použití pro interní generaci čárových kódů"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revize dílu"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Povolit pole revize pro díl"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Revize pouze pro sestavy"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Povolit revize pouze pro sestavy"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Povolit odstranění ze sestavy"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Povolit odstranění dílů, které jsou použity v sestavě"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Regulární vzorec výrazu pro odpovídající IPN dílu"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Povolit duplicitní IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Povolit více dílům sdílet stejný IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Povolit editaci IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Povolit změnu IPN při úpravách dílu"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Kopírovat data BOM dílu"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Kopírovat data BOM ve výchozím nastavení při duplikování dílu"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Kopírovat data parametrů dílu"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Kopírovat data parametrů ve výchozím nastavení při duplikování dílu"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Kopírovat zkušební data dílu"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Kopírovat testovací data ve výchozím nastavení při duplikování dílu"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kopírovat šablony parametrů kategorie"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kopírování šablon parametrů kategorie při vytváření dílu"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Díly jsou ve výchozím nastavení šablony"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Díly lze ve výchozím nastavení sestavit z jiných komponentů"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponent"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Díly lze ve výchozím nastavení použít jako dílčí komponenty"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Možné zakoupit"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Díly jsou zakoupitelné ve výchozím nastavení"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Prodejné"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Díly jsou prodejné ve výchozím nastavení"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Díly jsou sledovatelné ve výchozím nastavení"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Nehmotné (virtuální)"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Díly jsou nehmotné (virtuální) ve výchozím nastavení"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Zobrazit související díly"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Zobrazit související díly pro díl"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Počáteční údaje zásob"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Povolit vytvoření počátečního skladu při přidání nové části"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Počáteční údaje dodavatele"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Povolit vytvoření počátečních dat dodavatele při přidávání nového dílu"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Formát zobrazení jména dílu"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formát pro zobrazení názvu dílu"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Výchozí ikona kategorie dílu"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Výchozí ikona kategorie dílu (prázdné znamená bez ikony)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Minimální počet desetinných míst u cen"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Minimální počet desetinných míst k zobrazení u cenových údajů"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Maximální počet desetinných míst u cen"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Maximální počet desetinných míst k zobrazení u cenových údajů"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Použít ceny dodavatele"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Zahrnout cenová zvýhodnění dodavatelů do celkových cenových kalkulací"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Přepsání historie nákupu"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Historické ceny nákupních objednávek mají přednost před cenovými zvýhodněními dodavatele"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Použít ceny skladových položek"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Použít ceny z ručně zadaných skladových údajů pro cenové kalkulace"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Stáří cen skladových položek"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Vyloučit skladové položky starší než tento počet dní z cenových kalkulací"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Použít cenu varianty"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Zahrnutí cen variant do celkových cenových kalkulací"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Pouze aktivní varianty"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Pro výpočet ceny varianty použijte pouze aktivní díly varianty"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Automatická aktualizace cen"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Automaticky aktualizovat cenu dílu když se změní interní data"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Interval přestavby cen"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Počet dní před automatickou aktualizací cen dílů"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Interní ceny"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Povolit interní ceny pro díly"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Přepis interní ceny"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Pokud jsou k dispozici, interní ceny mají přednost před výpočty cenového rozpětí"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Povolit tisk štítků"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Povolit tisk štítků z webového rozhraní"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI rozlišení štítků"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Rozlišení DPI při generování obrazových souborů, které se dodávají do zásuvných modulů pro tisk štítků"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Povolit reporty"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Povolit generování reportů"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Režim ladění chyb"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Generovat reporty v režimu ladění (HTML výstup)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Zaznamenávat chyby reportů"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Zaznamenávat chyby, které se vyskytnou při vytváření reportů"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Velikost stránky"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Výchozí velikost stránky pro PDF reporty"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Vynutit jednotky parametru"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Pokud jsou uvedeny jednotky, musí hodnoty parametrů odpovídat zadaným jednotkám"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Globálně unikátní sériová čísla"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Sériová čísla pro skladové položky musí být globálně unikátní"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Odstranit vyčerpané zásoby"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Určuje výchozí chování při vyčerpání zásoby položky"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Šablona kódu dávky"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Šablona pro generování výchozích kódů dávky pro skladové položky"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Expirace zásob"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Povolit funkci expirace zásob"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Prodat prošlé zásoby"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Povolit prodej prošlých zásob"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Čas stáří zásob"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Počet dnů, po které jsou skladové položky považovány za nevyužité před uplynutím doby expirace"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Sestavit prošlé zásoby"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Povolit sestavování s prošlými zásobami"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Kontrola vlastnictví zásob"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Umožnit kontrolu vlastnictví nad skladovými místy a položkami"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Výchozí ikona umístění zásob"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Výchozí ikona umístění zásob (prázdné znamená bez ikony)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Zobrazit nainstalované skladové položky"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Zobrazit nainstalované skladové položky ve skladových tabulkách"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Zkontrolovat BOM při instalaci položek"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Nainstalované skladové položky musí existovat v BOM pro nadřazený díl"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Povolit převod mimo sklad"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Umožnit přesun skladových položek, které nejsou na skladě, mezi skladovými místy"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Referenční vzor objednávky sestavy"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Požadovaný vzor pro generování referenčního pole Objednávka sestavy"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Vyžadovat odpovědného vlastníka"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Ke každé objednávce musí být přiřazen odpovědný vlastník"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Vyžadovat aktivní díl"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Zabránit vytváření výrobních příkazů pro neaktivní díly"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Vyžadovat uzamčený díl"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Zabránit vytváření výrobních příkazů pro odemčené díly"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Vyžadovat schválený kusovník"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Zabránit vytváření výrobních příkazů, dokud není schválen kusovník"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Vyžadovat uzavření podobjednávek"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Zabránit dokončení výrobního příkazu dokud nebudou uzavřeny všechny podpříkazy"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Externí výrobní příkazy"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Povolit funkcionalitu externích výrobních příkazů"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blokovat, dokud testy neprojdou"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Zabránit dokončení výstupů sestavy, dokud neprojdou všechny požadované testy"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Povolit vracení objednávek"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Povolit funkci vrácení objednávky v uživatelském rozhraní"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Referenční vzor návratové objednávky"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Požadovaný vzor pro vygenerování referenčního pole Návratová objednávka"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Úprava dokončených návratových objednávek"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Umožnit úpravu návratových objednávek po jejich dokončení"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Referenční vzor prodejní objednávky"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Požadovaný vzor pro generování referenčního pole prodejní objednávky"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Výchozí přeprava prodejní objednávky"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Povolit vytvoření výchozí přepravy s prodejními objednávkami"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Úprava dokončených prodejních objednávek"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Umožnit úpravy prodejních objednávek po jejich odeslání nebo dokončení"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr "Zásilka vyžaduje kontrolu"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr "Zabránit dokončení zásilek dokud nebudou zkontrolovány položky"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Označit odeslané objednávky jako dokončené"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Prodejní objednávky označené jako odeslané se automaticky dokončí a obejdou stav „odesláno“"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Referenční vzor nákupní objednávky"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Požadovaný vzor pro generování referenčního pole nákupní objednávky"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Úprava dokončených nákupních objednávek"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Umožnit úpravy nákupních objednávek po jejich odeslání nebo dokončení"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Převést měnu"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Převést hodnotu předmětu na základní měnu při příjmu zásob"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Automatické dokončování nákupních objednávek"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Automaticky označit nákupní objednávky jako kompletní, jakmile jsou přijaty všechny řádkové položky"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Povolit pole zapomenutého hesla"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Povolení funkce zapomenutého hesla na přihlašovacích stránkách"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Povolit registrace"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Povolit samoregistraci uživatelů na přihlašovacích stránkách"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Povolit SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Povolit SSO na přihlašovacích stránkách"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Povolit SSO registraci"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Povolit samoregistraci uživatelů prostřednictvím SSO na přihlašovacích stránkách"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Povolit synchronizaci SSO skupin"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Povolit synchronizaci InvenTree skupin se skupinami poskytnutými IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "klíč SSO skupiny"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Název deklarace skupinového atributu poskytnutého IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "mapa SSO skupiny"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Mapování ze skupin SSO do místních InvenTree skupin. Pokud místní skupina neexistuje, bude vytvořena."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Odstranit skupiny mimo SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Zdali mají být skupiny přiřazené uživateli odstraněny pokud nemají backend of IdP. Vypnutí tohoto nastavení můžu způsobit problémy se zabezpečením"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Vyžadován e-mail"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Požadovat, aby uživatel při registraci zadal e-mail"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Automaticky vyplnit SSO uživatele"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Automaticky vyplnit údaje o uživateli z údajů o účtu SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Mail dvakrát"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Při registraci dvakrát požádat uživatele o zadání e-mailu"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Heslo dvakrát"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Při registraci dvakrát požádat uživatele o heslo"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Povolené domény"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Omezit registraci na určité domény (oddělené čárkou a začínající @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Skupina při registraci"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Skupina do které jsou nový uživatelé přiřazeni při registraci. Pokud je povolena synchronizace SSO skupin, tato skupina lze přiřadit pouze pokud nezle přiřadit skupinu od IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Vynutit MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Uživatelé musí používat vícefaktorové zabezpečení."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr "Povolení tohoto nastavení bude vyžadovat více fázové ověření u všech uživatelů. Všechny relace budou okamžitě ukončeny."
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Zkontrolovat pluginy při spuštění"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Zkontrolujte, zda jsou při spuštění nainstalovány všechny pluginy - povolit v kontejnerových prostředích"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Zkontrolovat aktualizace pluginů"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Povolit pravidelné kontroly aktualizací nainstalovaných pluginů"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Povolit integraci URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Povolit plug-inům přidávat trasy URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Povolit integraci navigace"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Povolit integrování pluginů do navigace"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Povolit integraci aplikací"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Povolit pluginům přidávát aplikace"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Povolit integraci plánu"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Povolit pluginům spouštění naplánovaných úloh"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Povolit integraci událostí"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Povolit pluginům reagovat na interní události"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Povolit rozhraní intergace"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Povolit integrování pluginů do uživatelského rozhraní"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Povolit integraci emailu"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Povolit pluginům zpracování odchozích/příchozích emailů"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Povolit projektové kódy"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Povolit projektové kódy pro sledování projektů"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Povolit historii zásob"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Povolit funkcionalitu pro zaznamenávání historických stavů zásob a hodnoty"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Vyloučit externí umístění"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Vyloučit skladové položky v externích lokací z výpočtu historie zásob"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Perioda automatické inventury"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Počet dní mezi automatickým záznamem historie zásob"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Odstranit starých záznamů historie zásob"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Odstranit historii zásob starší než zadaný počet dní"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Interval odstranení historie zásob"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Historie zásob vstupu bude odstraněna po zadaném počtu dní"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Zobrazit celá jména uživatelů"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Zobrazit plná jména uživatelů namísto uživatelských jmen"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Zobrazit uživatelské profily"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Zobrazit profily uživatelů na jejich profilové stránce"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Povolit data zkušební stanice"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Povolit sběr dat ze zkušební stanice pro výsledky testů"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr "Povolit ping stroje"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr "Povolit pravidelný úkol pingu registrovaných strojů pro kontrolu jejich stavu"
@@ -3596,11 +3604,11 @@ msgstr "Zobrazit reporty PDF v prohlížeči namísto stahování jako soubor"
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "Skener čárových kódů v polích formuláře"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "Povolit zadávání čárového kódu v polích formuláře"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3911,29 +3919,29 @@ msgstr "Díl je aktivní"
msgid "Manufacturer is Active"
msgstr "Výrobce je aktivní"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Díl dodavatele je aktivní"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Interní díl je aktivní"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Dodavatel je aktivní"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Výrobce"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Společnost"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Má zásoby"
@@ -3969,7 +3977,7 @@ msgstr "Kontaktní telefonní číslo"
msgid "Contact email address"
msgstr "Kontaktní e-mailová adresa"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakt"
@@ -4022,255 +4030,247 @@ msgstr "DIČ"
msgid "Company Tax ID"
msgstr "DIČ společnosti"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adresa"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adresy"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Vyberte společnost"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Název adresy"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Název popisující záznam adresy"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Primární adresa"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Nastavit jako primární adresu"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Řádek 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "1. řádek adresy"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Řádek 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "2. řádek adresy"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "PSČ"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Město/Region"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "PSČ město/region"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Stát/kraj"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Stát nebo provincie"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Země"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Adresovaná země"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Doručovací poznámky pro kurýra"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Poznámky pro kurýra"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Interní přepravní poznámky"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Doručovací poznámky pro interní použití"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Odkaz na informace o adrese (externí)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Výrobce dílu"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Základní díl"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Zvolte díl"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Vyberte výrobce"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Číslo dílu výrobce"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL pro odkaz na díl externího výrobce"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Popis dílu výrobce"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Jednotky balení musí být kompatibilní s jednotkami základních dílů"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Jednotky balení musí být větší než nula"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Odkazovaný díl výrobce musí odkazovat na stejný základní díl"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Dodavatel"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Vyberte dodavatele"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Skladová evidence dodavatele"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Je tento díl dodavatele aktivní?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Vyberte díl výrobce"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "Adresa URL pro odkaz na externí díl dodavatele"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Popis dílu dodavatele"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "základní cena"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimální poplatek (např. poplatek za skladování)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Balení"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Balení dílu"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Počet kusů v balení"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Celkové množství dodávané v jednom balení. Pro jednotlivé položky ponechte prázdné."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "více"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Objednat více"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Množství dostupné od dodavatele"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Dostupnost aktualizována"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Datum poslední aktualizace údajů o dostupnosti"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Cenová sleva dodavatele"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr "Hlavní adresa"
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Vrátí reprezentaci řetězce pro primární adresu. Tato vlastnost existuje pro zpětnou kompatibilitu."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Výchozí měna používaná pro tohoto dodavatele"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Jméno společnosti"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Skladem"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr "Množstevní sleva"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Při exportu dat došlo k chybě"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Plugin pro export dat vrátil nesprávný formát dat"
@@ -4418,7 +4418,7 @@ msgstr "Původní data řádku"
msgid "Errors"
msgstr "Chyby"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Platné"
@@ -4530,7 +4530,7 @@ msgstr "Počet kopií, které se mají tisknout pro každý štítek"
msgid "Connected"
msgstr "Připojeno"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Neznámý"
@@ -4662,7 +4662,7 @@ msgstr "Maximální hodnota pro pokrok typu, vyžadováno pokud typ=pokrok"
msgid "Order Reference"
msgstr "Označení objednávky"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Vynikající"
@@ -4670,7 +4670,7 @@ msgstr "Vynikající"
msgid "Has Project Code"
msgstr "Má projektový kód"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Vytvořil(a)"
@@ -4710,11 +4710,11 @@ msgstr "Cílové datum po"
msgid "Has Pricing"
msgstr "Má cenu"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Dokončeno před"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Dokončeno po"
@@ -4722,40 +4722,40 @@ msgstr "Dokončeno po"
msgid "External Build Order"
msgstr "Externí výrobní příkaz"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Objednávka"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Objednávka byla dokončena"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Interní díl"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Objednávka čeká na vyřízení"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Dokončeno"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Má zásilku"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Nákupní objednávka"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Nákupní objednávka"
msgid "Sales Order"
msgstr "Prodejní objednávka"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Celková cena"
msgid "Total price for this order"
msgstr "Celková cena za tuto objednávku"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Měna objednávky"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Měna pro tuto objednávku (nechte prázdné pro použití výchozí hodnoty společnosti)"
@@ -4805,240 +4805,240 @@ msgstr "Datum zahájení musí být před cílovým datem"
msgid "Address does not match selected company"
msgstr "Adresa nesouhlasí s vybranou společností"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Popis objednávky (volitelné)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Vyberte kód projektu pro tuto objednávku"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Odkaz na externí stránku"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Datum zahájení"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Plánované datum zahájení této objednávky"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Cílené datum"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Očekávané datum doručení objednávky. Objednávka bude po tomto datu splatná."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Datum vystavení"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Datum vystavení objednávky"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Uživatel nebo skupina odpovědná za tuto objednávku"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Kontaktní bod pro tuto objednávku"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Adresa společnosti pro tuto objednávku"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Číslo objednávky"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Stav"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Stav objednávky"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Společnost, od které se položky objednávají"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Reference dodavatele"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Referenční kód objednávky dodavatele"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "přijal"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Datum dokončení objednávky"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Místo určení"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Cílové místo pro přijaté položky"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Dodavatel dílu se musí shodovat s dodavatelem PO"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Řádková položka neodpovídá nákupní objednávce"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "Řádkové položce chybí propojený díl"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Množství musí být kladné"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Zákazník"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Společnost, jíž se položky prodávají"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Stav prodejní objednávky"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Reference zákazníka "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Referenční kód objednávky zákazníka"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Datum odeslání"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "odesláno společností"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Objednávka je již dokončena"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Objednávka je již zrušena"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Pouze otevřená objednávka může být označena jako kompletní"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Objednávku nelze dokončit, protože dodávky jsou nekompletní"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "Objednávka nemůže být dokončena, protože jsou neúplné přiřazení"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Objednávka nemůže být dokončena, protože jsou neúplné řádkové položky"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "Objednávka je uzamčena a nelze ji upravit"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Množství položky"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Označení řádkové položky"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Poznámky k řádkovým položkám"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Cílové datum pro tuto řádkovou položku (pro použití cílového data z objednávky ponechte prázdné)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Popis řádkové položky (nepovinné)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Dodatečný kontext pro tento řádek"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Cena za jednotku"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Řádková položka nákupní objednávky"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Dodavatelský díl musí odpovídat dodavateli"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "Objednávka sestavení musí být označená jako externí"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Objednávka sestavení může být propojena pouze s montážními díly"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "Výrobní příkaz musí odpovídat lince předmětu dílu"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Díl dodavatele"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Doručeno"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Počet přijatých položek"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Nákupní cena"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Jednotková nákupní cena"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Externí výrobní příkaz který má být splněn touto linkovou položkou"
@@ -5102,8 +5102,8 @@ msgstr "Kontroloval(a)"
msgid "User who checked this shipment"
msgstr "Uživatel, který zkontroloval tuto zásilku"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Doprava"
@@ -5164,7 +5164,11 @@ msgstr "Nelze přidělit skladovou položku na řádek bez dílu"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Přidělené množství nesmí překročit množství zásob"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Zabrané množství musí být větší než nula"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Množství musí být 1 pro serializovanou skladovou položku"
@@ -5172,7 +5176,7 @@ msgstr "Množství musí být 1 pro serializovanou skladovou položku"
msgid "Sales order does not match shipment"
msgstr "Prodejní objednávka neodpovídá zásilce"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Zásilka neodpovídá prodejní objednávce"
@@ -5256,247 +5260,247 @@ msgstr "Náklady spojené s návratem nebo opravou této položky"
msgid "Return Order Extra Line"
msgstr "Vratka extra linka"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID objednávky"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID objednávky k duplikaci"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Kopírovat řádky"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Kopírovat řádkové položky z původní objednávky"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Kopírovat extra řádky"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Kopírovat extra řádkové položky z původní objednávky"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Řádkové položky"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Dokončené řádky"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Duplikovat objednávku"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Specifikujte možnosti pro duplikaci této objednávky"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Neplatné ID objednávky"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Název dodavatele"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Objednávku nelze zrušit"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Povolit uzavření objednávky s neúplnými řádkovými položkami"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Objednávka má nedokončené řádkové položky"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Objednávka není otevřena"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Automatická cena"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Automaticky vypočítat nákupní cenu na základě údajů o dílech dodavatele"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Měna nákupní ceny"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Sloučit položky"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Sloučit položky se stejným dílem, místem určení a cílovým datem do jedné řádkové položky"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Číslo zboží (SKU)"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Interní číslo dílu"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Interní název dílu"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Musí být uveden díl dodavatele"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Objednávka musí být zadána"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Dodavatel musí odpovídat objednávce"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Objednávka musí odpovídat dodavateli"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Řádková položka"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Vyberte cílové umístění pro přijaté položky"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Zadat kód šarže pro příchozí skladové položky"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Datum expirace"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Zadejte datum expirace pro příchozí skladové položky"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Zadat sériová čísla pro příchozí skladové položky"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Přepsat informace o obalu pro příchozí skladové položky"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Dodatečná poznámka pro příchozí skladové položky"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Čárový kód"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Naskenovaný čárový kód"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Tento čárový kód se již používá"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Musí být uvedeny řádkové položky"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Místo určení musí být specifikováno"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Hodnoty dodaných čárových kódů musí být unikátní"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Zásilky"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Dokončené zásilky"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Měna prodejní ceny"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Přidělené položky"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Nebyly poskytnuty žádné údaje o zásilce"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Řádková položka není přiřazena k této objednávce"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Množství musí být kladné"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Zadejte sériová čísla pro přidělení"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Zásilka již byla odeslána"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Zásilka není spojena s touto objednávkou"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Nebyla nalezena žádná shoda pro následující sériová čísla"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Následující sériová čísla nejsou k dispozici"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Řádkový předmět vratky"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Řádková položka neodpovídá vratce"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Řádková položka již byla přijata"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Položky lze přijímat pouze proti objednávkám, které probíhají"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Množství k vrácení"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Měna ceny řádku"
@@ -5647,7 +5651,7 @@ msgstr "Díl komponenty je testovatelný"
msgid "Uses"
msgstr "Využití"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Kategorie dílu"
@@ -5656,7 +5660,7 @@ msgstr "Kategorie dílu"
msgid "Part Categories"
msgstr "Kategorie dílů"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Výchozí umístění"
@@ -5664,7 +5668,7 @@ msgstr "Výchozí umístění"
msgid "Default location for parts in this category"
msgstr "Výchozí umístění dílů v této kategorii"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Strukturální"
@@ -5680,12 +5684,12 @@ msgstr "Výchozí klíčová slova"
msgid "Default keywords for parts in this category"
msgstr "Výchozí klíčová slova pro díly v této kategorii"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ikona"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ikona (volitelná)"
@@ -5693,655 +5697,655 @@ msgstr "Ikona (volitelná)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Nemůžete tuto kategorii označit jako strukturální, protože má již přiřazené díly!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Šablona parametru kategorie dílu"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Výchozí hodnota"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Výchozí hodnota parametru"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Díly"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr "Nelze odstranit parametry zamčeného dílu"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr "Nelze upravit parametry zamčeného dílu"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Tento díl nelze smazat, protože je uzamčen"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Tento díl nelze odstanit, protože je stále aktivní"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Tento díl nelze odstranit, protože je použit v sestavě"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Díl '{self}' nelze použít v kusovníku '{parent}' (rekurzivní)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Díl '{parent}' je využit v kusovníku '{self}' (rekurzivní)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN musí odpovídat regex vzoru {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Díl nemůže být revize same sebe"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Nelze udělat revizi dílu, který už je revize"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Kód revize musí být uveden"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Revize jsou povoleny pouze pro sestavy"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Nelze provést revizi šablony"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "Nadřazený díl musí odkazovat na stejnou šablonu"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Skladová položka s tímto sériovým číslem již existuje"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Duplicitní IPN není povoleno v nastavení dílu"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Duplicitní díl revize již existuje."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Díl s tímto názvem, IPN a revizí již existuje."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Díly nemohou být přiřazeny do strukturálních kategorií!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Název dílu"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Je šablonou"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Je tento díl šablona?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Je tento díl varianta jiného dílu?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Varianta"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Popis dílu (nepovinné)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Klíčová slova"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Klíčová slova dílu pro zlepšení vyhledávání"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Kategorie dílu"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "Interní číslo dílu (IPN)"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Číslo revize nebo verze dílu"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revize"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Je tento díl revizí jiného dílu?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Revize"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Kde je tato položka obvykle skladněna?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Výchozí dodavatel"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Výchozí díl dodavatele"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Výchozí expirace"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Expirační čas (ve dnech) pro zásoby tohoto dílu"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimální zásoby na skladě"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Minimální povolená úroveň zásob"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Měrné jednotky pro tento díl"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Lze tento díl sestavit z jiných dílů?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Lze tento díl použít k sestavení jiných dílů?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Lze u tohoto dílu sledovat jednotlivé položky?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Může mít tento díl zaznamenány výsledky testu?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Může být tento díl zakoupen od externích dodavatelů?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Lze tento díl prodávat zákazníkům?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Je tento díl aktivní?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Uzamčené díly nelze upravit"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Je to virtuální díl, například softwarový produkt nebo licence?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "Kusovník ověřen"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Je kusovník pro tuto část platný?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Kontrolní součet kusovníku"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Uložený kontrolní součet kusovníku"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Kusovník zkontroloval"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Datum kontroly kusovníku"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Vytváření uživatele"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Vlastník odpovědný za tento díl"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Prodat více"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Měna použitá pro výpočet cen v mezipaměti"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimální cena kusovníku"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Minimální cena komponent dílu"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maximální cena kusovníku"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Maximální cena komponent dílu"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimální nákupní cena"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Minimální historická nákupní cena"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maximální nákupní cena"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Maximální historická nákupní cena"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimální interní cena"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Minimální cena závislá na množstevní slevě"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maximální interní cena"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Maximální cena závislá na množstevní slevě"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Minimální cena dodavatele"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Minimální cena dílu od externích dodavatelů"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Maximální cena dodavatele"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Maximální cena dílu od externích dodavatelů"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Minimální cena variant"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Vypočítané minimální náklady na varianty dílů"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Maximální cena variant"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Vypočítané maximální náklady na varianty dílů"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimální cena"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Přepsat minimální náklady"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maximální cena"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Přepsat maximální náklady"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Vypočítané minimální celkové náklady"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Vypočítané maximální celkové náklady"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Minimální prodejní cena"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Minimální prodejní cena na základě cenových zvýhodnění"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Maximální prodejní cena"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Maximální prodejní cena na základě cenových zvýhodnění"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Minimální prodejní cena"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Minimální historická prodejní cena"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Maximální prodejní cena"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Maximální historická prodejní cena"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Díl na inventuru"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Počet položek"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Počet jednotlivých položek zásob v době inventury"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Celkové dostupné zásoby v době inventury"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Datum"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Datum provedení inventury"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Minimální cena zásob"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Odhadovaná minimální cena zásob k dispozici"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maximální cena zásob"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Odhadovaná maximální cena zásob k dispozici"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Částeční sleva v ceně"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Šablona testu položky"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Neplatný název šablony - musí obsahovat alespoň jeden alfanumerický znak"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Zkušební šablony lze vytvořit pouze pro testovatelné části"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Testovací šablona se stejným klíčem již existuje pro díl"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Název testu"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Zadejte název testu"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Testovací klíč"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Zjednodušený klíč pro testování"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Popis testu"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Zadejte popis pro tento test"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Je tento test povolen?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Požadováno"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Je tato zkouška vyžadována k projití?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Požadovaná hodnota"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Vyžaduje tato zkouška hodnotu při výpočtu výsledku zkoušky?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Vyžaduje přílohu"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Vyžaduje tato zkouška soubor při přidání výsledku testu?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Platné volby pro tento test (oddělené čárkami)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "Položku kusovníku nelze změnit - sestava je uzamčena"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "Položku kusovníku nelze změnit - varianta montáže je uzamčena"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Vyberte nadřazený díl"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Poddílec"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Vyberte díl které bude použit v kusovníku"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Kusovníkové množství pro tuto kusovníkovou položku"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Tato položka kusovníku je nepovinná"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Tento předmět kusovníku je spotřebovatelný (není sledován v objednávkách stavby)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Nastavit množství"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "Dodatečné množství potřebné pro sestavení k vyúčtování ztráty nastavení"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Přirozené ztráty"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Odhadované přirozené ztráty pro stavbu, vyjádřeno v procentech (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Zaokrouhlení více"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "Zaokrouhlit požadované množství produkce na nejbližší násobek této hodnoty"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Reference položky kusovníku"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Poznámky k položce kusovníku"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Kontrolní součet"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Kontrolní součet řádku kusovníku"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Schváleno"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Tato položka kusovníku ještě nebyla schválena"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Se zdědí"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Tento kusovník se zdědí kusovníky pro varianty dílů"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Skladové položky pro varianty dílu lze použít pro tuto položku kusovníku"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Množství musí být celé číslo pro sledovatelné díly"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Poddíl musí být specifikován"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Náhradní položka kusovníku"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Náhradní díl nemůže být stejný jako hlavní díl"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Nadřazená položka kusovníku"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Náhradní díl"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Díl 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Díl 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Vyberte související díl"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Poznámka pro tento vztah"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Část vztahu nemůže být vytvořena mezi dílem samotným"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Duplicitní vztah již existuje"
@@ -6465,203 +6469,199 @@ msgstr "Výrobce dílu se stejným MPN již existuje"
msgid "Supplier part matching this SKU already exists"
msgstr "Dodavatelský díl s tímto SKU již existuje"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Název kategorie"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Budova"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Množství tohoto dílu, které je v současné době ve výrobě"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "Zbývající množství tohoto dílu, které má být postaveno"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Skladové položky"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Revize"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Dodavatelé"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Celkem skladem"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Nezařazené zásoby"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Skladové varianty"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Duplikovat díl"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Kopírovat počáteční data z jiného dílu"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Počáteční zásoby"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Vytvořit díl s počátečním množstvím zásob"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Informace o dodavateli"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Přidat počáteční informace dodavatele pro tento díl"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Kopírovat parametry kategorie"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Kopírovat šablony parametrů z vybrané kategorie dilu"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Stávající obrázek"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Název souboru existujícího obrázku dílu"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Obrázek neexistuje"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Schválit celý kusovník"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Lze postavit"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Vyžadováno pro výrobní objednávku"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Přířazeno výrobním objednávkám"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Vyžadováno pro prodejní objednávky"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Přiřazeno prodejním objednávkám"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Minimální cena"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Přespat vypočítanou hodnotu pro minimální cenu"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Měna minimální ceny"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Maximální cena"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Přespat vypočítanou hodnotu pro maximální cenu"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Měna maximální ceny"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Aktualizovat"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Aktualizovat cenu pro díl"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Nelze převést z poskytnutých měn na {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Minimální cena musí být vyšší než maximální cena"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Maximální cena nesmí být nížší než minimální cena"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Vybrat nadřazenou sestavu"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Vyberte komponentu dílu"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Vyberte díl pro kopírování kusovníku z"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Odstranit existující data"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Odstranit existující položky kusovníku před kopírováním"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Zahrnout zděděné"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Zahrnout položky kusovníku které jsou zdědené z šablonových dílů"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Přeskočit neplatné řádky"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Povolte tuto možnost pro přeskočení neplatných řádků"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Kopírovat náhradní díly"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Kopírovat náhradní díly při duplikaci položek kusovníku"
@@ -6732,108 +6732,108 @@ msgstr "Činnost nebyla specifikována"
msgid "No matching action found"
msgstr "Nebyla nalezena odpovídající činnost"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Pro data čárového kódu nebyla nalezena shoda"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Pro data čárového kódu byla nalezena shoda"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Model není podporován"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Instance modelu nebyla nalezena"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Čárový kód odpovídá existující položce"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Žádné odpovídající data nebyla nalezena"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Žádné odpovídající díly dodavatelů nebyly nalezeny"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Vícero odpovídajících dílů dodavatelů bylo nalezeno"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Žádný odpovídající plugin pro čárové kódy nebyl nalezen"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Odpovídající díl dodavatele"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Položka již byla obdržena"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Žádný plugin neodpovídá čárový kód dodavatele"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Vícero odpovídajících řádkových položek bylo nalezeno"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Žádná odpovídající řádková položka nebyla nalezena"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Žádná prodejní objednávka nebyla poskytnuta"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Čárový kód neodpovídá žádné existující skladové položce"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Skladová položka se neshoduje s řádkovou položkou"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Nedostatečný počet zásob"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Skladová položka byla přidělena prodejní objednávce"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Nedostatek informací"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Nalezena odpovídající položka"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Dodavatelská položka se neshoduje s řádkovou položkou"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Řádková položka je již dokončena"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Další informace potřebné k přijetí položky"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Obdržené položky objednávky"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Nepodařilo se přijmout řádkovou položku"
@@ -6972,7 +6972,7 @@ msgstr "Poskytuje nativní podporu pro čárové kódy"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr "Zadat zpětnou objednávku"
msgid "Automatically issue orders that are backdated"
msgstr "Automaticky zadávat objednávky které jsou zadany zpětně"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Úrovně"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "Počet úrovní pro export - dejte nula pro exportování všech BOM úrovní"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Celkové množství"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "Zahrnout celkové množství každé části kusovníku"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Skladová data"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Zahrnout údaje o zásobách"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Cenová data"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Zahrnout cenová data"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Dodavatelská data"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Zahrnout dodavatelská data"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Data výrobce"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Zahrnout data výrobce"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Náhradní data"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Zahrnout náhradní data"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Data parametru"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Zahrnout data paramentru"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Exportér více-úrovňových kusovníků"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Poskytuje podoru pro exportování více úrovní kusovníků"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "Úroveň kusovníku"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Náhrada {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Dodavatel {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "SKU dodavatele {n}"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "MPN dodavatele {n}"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Výrobce {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "MPN výrobce {n}"
@@ -7354,11 +7354,11 @@ msgstr "InvenTree tiskárna strojových štítků"
msgid "Provides support for printing using a machine"
msgstr "Poskytuje podporu pro tisk pomocí stroje"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "naposledy použito"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Možnosti"
@@ -8072,7 +8072,7 @@ msgstr "Celkem"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Sériové číslo"
@@ -8142,7 +8142,7 @@ msgstr "Soubor obrázku nebyl nalezen"
msgid "part_image tag requires a Part instance"
msgstr "part_image tag vyžaduje instanci dílu"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "company_image tag vyžaduje intanci společnosti"
@@ -8158,7 +8158,7 @@ msgstr "Filtrovat dle nejvyšší lokace"
msgid "Include sub-locations in filtered results"
msgstr "Zahrnout pod-lokace ve filtrovaných výsledcích"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Nadřazená místo"
@@ -8311,314 +8311,314 @@ msgstr "Typy skladových umístění"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Výchozí ikona pro všechny lokace které nemají ikonu nastavenou (volitelné)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Skladové umístění"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Skladová umístění"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Správce"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Vybrat vlastníka"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Skladové položky nelze umístit přímo do strukturálních skladových umístění, ale lze je umístit do podřízených skladových umístění."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Externí"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Toto je externí skladové umístění"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Typ umístění"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Typ tohoto skladového umístění"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Toto skladové umístění nemůžete označit jako strukturální, protože již obsahuje skladové položky!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "{field} neexistuje"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Díl musí být zadán"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Skladové položky nelze umístit do strukturálních skladových umístění!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Nelze vytvořit skladovou položku pro virtuální díl"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Typ dílu ('{self.supplier_part.part}') musí být {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Množství musí být 1 pro položku se sériovým číslem"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Sériové číslo nemůže být nastaveno, když množství je více než 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Položka nemůže patřit sama sobě"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Předmět musí mít stavební referenci pokud is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Stavební reference neukazuje na stejný objekt dílu"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Nadřazená skladová položka"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Základní díl"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Vyberte odpovídající díl dodavatele pro tuto skladovou položku"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Kde se tato skladová položka nachází?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Balení, ve kterém je tato skladová položka uložena"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Instalováno v"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Je tato položka nainstalována v jiné položce?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Sériové číslo pro tuto položku"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Kód šarže pro tuto skladovou položku"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Mnižství"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Zdrojová sestavení"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Postavit pro tuto skladovou položku"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Použito v"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Výrobní příkaz, který spotřeboval tuto skladovou položku"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Zdrojová nákupní objednávka"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Nákupní objednávka pro tuto skladovou položku"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Cílová prodejní objednávka"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Datum expirace pro skladovou položku. Po tomto datu bude položka brána jako expirovaná"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Odstranit po vyčerpání"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Odstranit tuto skladovou položku po vyčerpání zásob"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Jednotková kupní cena v okamžiku nákupu"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Převedeno na díl"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "Množství přesahuje dostupné zásoby"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Díl není nastaven jako sledovatelný"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Množstvní musí být celé číslo"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Množství nesmí překročit dostupné množství zásob ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Sériové čísla musí být poskytnuta jako seznam"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Množství neodpovídá sériovým číslům"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr "Nelze přiřadit zásoby ke strukturálnímu umístění"
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Testovací šablona neexistuje"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Skladová položka byla přidělena prodejní objednávce"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Skladová položka je nainstalována v jiné položce"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Skladová položka obsahuje jiné položky"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Skladová položka byla přidělena zákazníkovi"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Skladová položka je ve výrobě"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Serializované zásoby nelze sloučit"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Duplicitní skladové položky"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Skladové položky musí odkazovat na stejný díl"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Skladové položky musí odkazovat na stejný díl dodavatele"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Kódy stavu zásob se musí shodovat"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Zásobová položka nemůže být přesunuta, protože není skladem"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Sledování skladových položek"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Poznámky k záznamu"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Výsledek testu skladové položky"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Pro tuto zkoušku musí být uvedena hodnota"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Pro tento test musí být nahrána příloha"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Neplatná hodnota pro tento test"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Výsledek testu"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Výstupní hodnota testu"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Příloha výsledků testu"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Poznámky testu"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Testovací stanice"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "Identifikátor testovací stanice kde byl test proveden"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Začátek"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Čas začátku testu"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Ukončeno"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Čas dokončení testu"
@@ -8662,43 +8662,43 @@ msgstr "Vyberte díl, pro který se má vygenerovat sériové číslo"
msgid "Quantity of serial numbers to generate"
msgstr "Množství sériových čísel k vygenerování"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Testovací šablona pro tento výsledek"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr "Pro tento díl nebyl nalezen žádný odpovídající test"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "ID šablony nebo název testu musí být uveden"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "Čas ukončení testu nesmí být dřívější než čas zahájení testu"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Nadřazená položka"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Nadřazená skladová položka"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Použít velikost balení při přidání: definované množství je počet v balení"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "Použít velikost balení"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Zadejte sériová čísla pro nové položky"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Číslo dílu dodavatele"
@@ -8732,8 +8732,8 @@ msgstr "Nebyla poskytnuta žádná skladová položka"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Množství nesmí překročit dostupné skladové množství ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Cílové skladové umístění"
@@ -8805,103 +8805,103 @@ msgstr "Vybrat skladové položky pro změnu stavu"
msgid "No stock items selected"
msgstr "Nejsou vybrány žádné skladové položky"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Podumístění"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Nadřazené skladové umístění"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Díl musí být prodejný"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Položka je přidělena prodejní objednávce"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Položka je přidělena výrobnímu příkazu"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Zákazník, kterému mají být přiděleny skladové položky"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Vybraná společnost není zákazník"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Poznámky ke skladové položce"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Musí být poskytnut seznam skladových položek"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Poznámky ke sloučení skladových položek"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Povolit neodpovídající dodavatele"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Povolit sloučení skladových položek s různými díly dodavatele"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Povolit neodpovídající stav"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Povolit sloučení skladových položek s různými stavovými kódy"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Musí být poskytnuty alespoň dvě skladové položky"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Beze změny"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Hodnota primárního klíče skladové položky"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Skladová položka není skladem"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "Skladová položka je již na skladě"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "Množství nesmí být záporné"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Poznámky ke skladovací transakci"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "Sloučit do existující zásoby"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "Sloučit vrácené položky do existujích položek, pokud je to možné"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Další sériové číslo"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Předchozí sériové číslo"
@@ -9383,83 +9383,83 @@ msgstr "Prodejní objednávky"
msgid "Return Orders"
msgstr "Návratové objednávky"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Uživatelské jméno"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Křestní jméno"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Křestní jméno uživatele"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Příjmení"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Příjmení uživatele"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Emailová adresa uživatele"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personál"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Má tento uživatel oprávnění personálu"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Super-uživatel"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Je tento uživatel superuživatel"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Je tento uživatelský účet aktivní"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Pouze superuživatel může toto pole upravit"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Heslo"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Heslo uživatele"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "Přepsat varování"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "Přepsat varování o pravidlech pro heslo"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "Nemáte oprávnění k vytváření uživatelů"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Váš účet byl vytvořen."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Pro přihlášení použijte funkci obnovení hesla"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Vítejte v InvenTree"
diff --git a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po
index a0cdf6435b..c8ec9a7340 100644
--- a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:37\n"
"Last-Translator: \n"
"Language-Team: Danish\n"
"Language: da_DK\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API endpoint ikke fundet"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
-msgstr ""
+msgstr "Liste af elementer eller filtre skal angives for bulkdrift"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
-msgstr ""
+msgstr "Elementer skal angives som en liste"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
-msgstr ""
+msgstr "Alle filtre må kun bruges med sand"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
-msgstr ""
+msgstr "Ingen data angivet"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
-msgstr ""
+msgstr "Dette felt skal være unikt."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Bruger har ikke tilladelse til at se denne model"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Kunne ikke konvertere {original} til {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Ugyldigt antal angivet"
@@ -110,15 +110,15 @@ msgstr "Angiv dato"
#: InvenTree/fields.py:169
msgid "Invalid decimal value"
-msgstr ""
+msgstr "Ugyldig decimalværdi"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Bemærkninger"
@@ -133,7 +133,7 @@ msgstr "Den angivne værdi matcher ikke det påkrævede mønster: "
#: InvenTree/helpers.py:601
msgid "Cannot serialize more than 1000 items at once"
-msgstr ""
+msgstr "Kan ikke serialisere mere end 1000 elementer på én gang"
#: InvenTree/helpers.py:607
msgid "Empty serial number string"
@@ -147,7 +147,7 @@ msgstr "Duplikeret serienummer"
#: InvenTree/helpers.py:736 InvenTree/helpers.py:755
#, python-brace-format
msgid "Invalid group: {group}"
-msgstr ""
+msgstr "Ugyldig gruppe: {group}"
#: InvenTree/helpers.py:699
#, python-brace-format
@@ -161,7 +161,7 @@ msgstr "Ingen serienumre fundet"
#: InvenTree/helpers.py:772
#, python-brace-format
msgid "Number of unique serial numbers ({n}) must match quantity ({q})"
-msgstr ""
+msgstr "Antal unikke serienumre ({n}) skal matche antal ({q})"
#: InvenTree/helpers.py:902
msgid "Remove HTML tags from this value"
@@ -169,49 +169,49 @@ msgstr "Fjern HTML-tags fra denne værdi"
#: InvenTree/helpers.py:981
msgid "Data contains prohibited markdown content"
-msgstr ""
+msgstr "Data indeholder forbudt markdown indhold"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Forbindelsesfejl"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Serveren svarede med ugyldig statuskode"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Der opstod en fejl"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Serveren svarede med ugyldig Content-Length værdi"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Billedstørrelsen er for stor"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Billeddownload overskred maksimumstørrelsen"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Fjernserver returnerede tomt svar"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Angivet URL er ikke en gyldig billedfil"
#: InvenTree/magic_login.py:31
msgid "Log in to the app"
-msgstr ""
+msgstr "Log ind på appen"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,139 +255,139 @@ msgstr "Reference skal matche det påkrævede mønster"
msgid "Reference number is too large"
msgstr "Referencenummer er for stort"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Ugyldigt valg"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Navn"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Beskrivelse"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Beskrivelse (valgfri)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Sti"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown noter (valgfri)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Stregkode Data"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Tredjeparts stregkode data"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Stregkode Hash"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Unik hash af stregkode data"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Eksisterende stregkode fundet"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serverfejl"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "En fejl blev logget af serveren."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
-msgstr ""
+msgstr "Billede"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Skal være et gyldigt tal"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Vælg valuta fra tilgængelige muligheder"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Dette felt kan ikke være tomt."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Ugyldig værdi"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Eksternt billede"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL til ekstern billedfil"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Download af billeder fra ekstern URL er ikke aktiveret"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
#: InvenTree/setting/locales.py:20
msgid "Arabic"
-msgstr ""
+msgstr "Arabisk"
#: InvenTree/setting/locales.py:21
msgid "Bulgarian"
@@ -423,7 +423,7 @@ msgstr "Spansk (Mexikansk)"
#: InvenTree/setting/locales.py:29
msgid "Estonian"
-msgstr ""
+msgstr "Estisk"
#: InvenTree/setting/locales.py:30
msgid "Farsi / Persian"
@@ -443,7 +443,7 @@ msgstr "Hebraisk"
#: InvenTree/setting/locales.py:34
msgid "Hindi"
-msgstr ""
+msgstr "Hindi"
#: InvenTree/setting/locales.py:35
msgid "Hungarian"
@@ -463,11 +463,11 @@ msgstr "Koreansk"
#: InvenTree/setting/locales.py:39
msgid "Lithuanian"
-msgstr ""
+msgstr "Litauisk"
#: InvenTree/setting/locales.py:40
msgid "Latvian"
-msgstr ""
+msgstr "Lettisk"
#: InvenTree/setting/locales.py:41
msgid "Dutch"
@@ -491,7 +491,7 @@ msgstr "Portugisisk (Brasilien)"
#: InvenTree/setting/locales.py:46
msgid "Romanian"
-msgstr ""
+msgstr "Rumænsk"
#: InvenTree/setting/locales.py:47
msgid "Russian"
@@ -499,7 +499,7 @@ msgstr "Russisk"
#: InvenTree/setting/locales.py:48
msgid "Slovak"
-msgstr ""
+msgstr "Slovakisk"
#: InvenTree/setting/locales.py:49
msgid "Slovenian"
@@ -523,7 +523,7 @@ msgstr "Tyrkisk"
#: InvenTree/setting/locales.py:54
msgid "Ukrainian"
-msgstr ""
+msgstr "Ukrainsk"
#: InvenTree/setting/locales.py:55
msgid "Vietnamese"
@@ -539,11 +539,11 @@ msgstr "Kinesisk (traditionelt)"
#: InvenTree/tasks.py:576
msgid "Update Available"
-msgstr ""
+msgstr "Opdatering tilgængelig"
#: InvenTree/tasks.py:577
msgid "An update for InvenTree is available"
-msgstr ""
+msgstr "En opdatering til InvenTree er tilgængelig"
#: InvenTree/validators.py:28
msgid "Invalid physical unit"
@@ -553,30 +553,30 @@ msgstr "Ugyldig fysisk enhed"
msgid "Not a valid currency code"
msgstr "Ikke en gyldig valutakode"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
-msgstr ""
+msgstr "Ordre status"
#: build/api.py:80 build/models.py:265
msgid "Parent Build"
msgstr "Overordnet produktion"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,11 +596,11 @@ msgstr ""
msgid "Part"
msgstr "Del"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
-msgstr ""
+msgstr "Kategori"
#: build/api.py:131 build/api.py:135
msgid "Ancestor Build"
@@ -608,31 +608,31 @@ msgstr ""
#: build/api.py:152 order/api.py:134
msgid "Assigned to me"
-msgstr ""
+msgstr "Tildelt til Mig"
#: build/api.py:167
msgid "Assigned To"
-msgstr ""
+msgstr "Tildelt Til"
#: build/api.py:202
msgid "Created before"
-msgstr ""
+msgstr "Oprettet før"
#: build/api.py:206
msgid "Created after"
-msgstr ""
+msgstr "Oprettet efter"
#: build/api.py:210
msgid "Has start date"
-msgstr ""
+msgstr "Har startdato"
#: build/api.py:218
msgid "Start date before"
-msgstr ""
+msgstr "Start dato før"
#: build/api.py:222
msgid "Start date after"
-msgstr ""
+msgstr "Start dato efter"
#: build/api.py:226
msgid "Has target date"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Produktion skal anulleres, før den kan slettes"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Forbrugsvare"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Valgfri"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Sporet"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
-msgstr ""
+msgstr "Ordre Udestående"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Allokeret"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Tilgængelig"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Produktionsordre"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
-msgstr ""
+msgstr "Lokation"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -749,7 +749,7 @@ msgstr "Produktionsordrer"
#: build/models.py:169
msgid "Assembly BOM has not been validated"
-msgstr ""
+msgstr "Monteringens stykliste er ikke blevet valideret"
#: build/models.py:176
msgid "Build order cannot be created for an inactive part"
@@ -765,7 +765,7 @@ msgstr ""
#: build/models.py:208 order/models.py:370
msgid "Responsible user or group must be specified"
-msgstr ""
+msgstr "Ansvarlig bruger eller gruppe skal specificeres"
#: build/models.py:213
msgid "Build order part cannot be changed"
@@ -779,15 +779,15 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Produktionsordre reference"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
#: report/templates/report/inventree_sales_order_report.html:28
msgid "Reference"
-msgstr ""
+msgstr "Reference"
#: build/models.py:256
msgid "Brief description of the build (optional)"
@@ -809,7 +809,7 @@ msgstr "Salgsordrereference"
msgid "SalesOrder to which this build is allocated"
msgstr "Salgsordre, som er tildelt denne produktion"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Kilde Lokation"
@@ -819,11 +819,11 @@ msgstr "Vælg lokation for lager, som skal benyttes til denne produktion (lad fe
#: build/models.py:302
msgid "External Build"
-msgstr ""
+msgstr "Ekstern Byg"
#: build/models.py:303
msgid "This build order is fulfilled externally"
-msgstr ""
+msgstr "Denne byggeordre er gennemført eksternt"
#: build/models.py:308
msgid "Destination Location"
@@ -857,17 +857,17 @@ msgstr "Produktions Status"
msgid "Build status code"
msgstr "Produktions statuskode"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Batch Kode"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Batch kode til dette produktions output"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Oprettelsesdato"
@@ -877,7 +877,7 @@ msgstr ""
#: build/models.py:359
msgid "Scheduled start date for this build order"
-msgstr ""
+msgstr "Planlagt startdato for denne byggeordre"
#: build/models.py:365
msgid "Target completion date"
@@ -887,7 +887,7 @@ msgstr "Projekteret afslutningsdato"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Dato for afslutning"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Bruger som udstedte denne byggeordre"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Ansvarlig"
@@ -913,12 +913,12 @@ msgstr "Ansvarlig"
msgid "User or group responsible for this build order"
msgstr "Bruger eller gruppe ansvarlig for denne byggeordre"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Ekstern link"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link til ekstern URL"
@@ -931,13 +931,13 @@ msgid "Priority of this build order"
msgstr "Prioritet af denne byggeordre"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
-msgstr ""
+msgstr "Projektkode"
#: build/models.py:424
msgid "Project code for this build order"
-msgstr ""
+msgstr "Projektkode for denne byggeordre"
#: build/models.py:677
msgid "Cannot complete build order with open child builds"
@@ -960,7 +960,7 @@ msgstr "Bygningsordre {build} er fuldført"
msgid "A build order has been completed"
msgstr "En byggeordre er fuldført"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1028,429 +1028,421 @@ msgstr ""
#: templates/email/build_order_completed.html:18
#: templates/email/stale_stock_notification.html:19
msgid "Quantity"
-msgstr ""
+msgstr "Antal"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
-msgstr ""
-
-#: build/models.py:1966
-msgid "Source stock item"
-msgstr ""
+msgstr "Lagervarer"
#: build/models.py:1976
+msgid "Source stock item"
+msgstr "Kilde lagervare"
+
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
-msgstr ""
+msgstr "Del Navn"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
-msgstr ""
+msgstr "Serienummer"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
-msgstr ""
+msgstr "Indtast serienumre for bygge output"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
-msgstr ""
+msgstr "Automatisk alloker serienumre"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
-msgstr ""
+msgstr "Følgende serienumre findes allerede eller er ugyldige"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Ikke tilladt"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Accepter som forbrugt af denne byggeordre"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Accepter Ikke tildelt"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Accepter at lagervarer ikke er fuldt tildelt til denne byggeordre"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Accepter ufuldført"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Bygge linje"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
-msgstr ""
+msgstr "Varen skal være på lager"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
-msgstr ""
+msgstr "Tilgængeligt antal ({q}) overskredet"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
-msgstr ""
+msgstr "Stykliste Reference"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
-msgstr ""
+msgstr "Stykliste del ID"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
-msgstr ""
+msgstr "Stykliste Del Navn"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
-msgstr ""
+msgstr "Byg"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
-msgstr ""
+msgstr "Leverandør Del"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
-msgstr ""
+msgstr "Tildelt Antal"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
-msgstr ""
+msgstr "Stykliste Del"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
-msgstr ""
+msgstr "I Produktion"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
-msgstr ""
+msgstr "Ekstern Lager"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
-msgstr ""
+msgstr "Tilgængelig Lager"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1467,7 +1459,7 @@ msgstr "Produktion"
#: build/status_codes.py:13 order/status_codes.py:14 order/status_codes.py:51
#: order/status_codes.py:81
msgid "On Hold"
-msgstr ""
+msgstr "På Hold"
#: build/status_codes.py:14 order/status_codes.py:16 order/status_codes.py:53
#: order/status_codes.py:84
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1528,11 +1520,15 @@ msgstr ""
#: common/currency.py:154
msgid "No plugin"
-msgstr ""
+msgstr "Ingen plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Projekt Kode Label"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
-msgstr ""
+msgstr "Opdateret"
#: common/models.py:106 common/models.py:131
msgid "Timestamp of last update"
@@ -1548,17 +1544,17 @@ msgstr ""
#: common/models.py:169
msgid "Unique project code"
-msgstr ""
+msgstr "Unik projekt kode"
#: common/models.py:176
msgid "Project description"
-msgstr ""
+msgstr "Projektbeskrivelse"
#: common/models.py:185
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1572,568 +1568,568 @@ msgstr ""
#: common/models.py:850
msgid "Value must be a boolean value"
-msgstr ""
+msgstr "Værdien skal være en boolsk værdi"
#: common/models.py:858
msgid "Value must be an integer value"
-msgstr ""
+msgstr "Værdi skal være et heltalsværdi"
#: common/models.py:866
msgid "Value must be a valid number"
-msgstr ""
+msgstr "Skal være et gyldigt tal"
#: common/models.py:891
msgid "Value does not pass validation checks"
-msgstr ""
+msgstr "Værdien består ikke valideringskontrol"
#: common/models.py:913
msgid "Key string must be unique"
-msgstr ""
+msgstr "Nøglestrengen skal være unik"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Bruger"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
-msgstr ""
+msgstr "Pris"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
-msgstr ""
+msgstr "Aktiv"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
-msgstr ""
+msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
-msgstr ""
+msgstr "Token for adgang"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
-msgstr ""
+msgstr "Hemmelighed"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
-msgstr ""
+msgstr "Besked ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
-msgstr ""
-
-#: common/models.py:1563
-msgid "Host from which this message was received"
-msgstr ""
-
-#: common/models.py:1571
-msgid "Header"
-msgstr ""
-
-#: common/models.py:1572
-msgid "Header of this message"
-msgstr ""
+msgstr "Vært"
#: common/models.py:1579
+msgid "Host from which this message was received"
+msgstr "Vært, hvorfra denne meddelelse blev modtaget"
+
+#: common/models.py:1587
+msgid "Header"
+msgstr "Overskrift"
+
+#: common/models.py:1588
+msgid "Header of this message"
+msgstr "Overskrift for denne besked"
+
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
-msgstr ""
+msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
-msgstr ""
+msgstr "Titel"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
-msgstr ""
+msgstr "Tilknytning"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
-msgstr ""
+msgstr "Publiceret"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
-msgstr ""
+msgstr "Forfatter"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
-msgstr ""
+msgstr "Opsummering"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
-msgstr ""
+msgstr "Læs"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
-msgstr ""
+msgstr "Blev dette nyhedselement læst?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
-msgstr ""
+msgstr "Billedfil"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
-msgstr ""
+msgstr "Symbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Vedhæftning"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Manglende fil"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Manglende eksternt link"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Vælg fil, der skal vedhæftes"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Kommentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
-msgstr ""
+msgstr "Filstørrelse"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
-msgstr ""
+msgstr "Filstørrelse i bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
-msgstr ""
+msgstr "Værdi"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
-msgstr ""
+msgstr "Numerisk værdi, der vil blive gemt i modeldatabasen"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
-msgstr ""
+msgstr "Label"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
-msgstr ""
+msgstr "Farve"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
-msgstr ""
+msgstr "Farve der vil blive vist på frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
-msgstr ""
+msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
-msgstr ""
+msgstr "Låst"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
-msgstr ""
+msgstr "Parameter skabelon navn skal være unikt"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
-msgid "Barcode Scan"
-msgstr ""
-
-#: common/models.py:2793
-msgid "Barcode data"
-msgstr ""
-
#: common/models.py:2804
+msgid "Barcode Scan"
+msgstr "Stregkode Scan"
+
+#: common/models.py:2809
+msgid "Barcode data"
+msgstr "Stregkode data"
+
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
-msgstr ""
+msgstr "Sendt"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
-msgstr ""
+msgstr "Fejlede"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
-msgstr ""
+msgstr "Leveret"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
-msgstr ""
+msgstr "Bekræftet"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
-msgstr ""
+msgstr "Indkommende"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
-msgstr ""
+msgstr "Udgående"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
-msgstr ""
+msgstr "Intet Svar"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
-msgstr ""
+msgstr "Spor Levering"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
-msgstr ""
-
-#: common/models.py:3026
-msgid "Track Click"
-msgstr ""
-
-#: common/models.py:3029 common/models.py:3132
-msgid "Global ID"
-msgstr ""
+msgstr "Spor Læst"
#: common/models.py:3042
+msgid "Track Click"
+msgstr "Spor Klik"
+
+#: common/models.py:3045 common/models.py:3148
+msgid "Global ID"
+msgstr "Global ID"
+
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
-msgstr ""
+msgstr "Identifikator for denne meddelelse (leveres muligvis af et eksternt system)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
-msgstr ""
+msgstr "Tråd ID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
-msgstr ""
+msgstr "E-mail Tråd"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
-msgstr ""
+msgstr "E-mail Tråde"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
-msgstr ""
+msgstr "Nøgle"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Filnavn"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
-msgstr ""
+msgstr "Firmanavn"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
-msgstr ""
+msgstr "Standardvaluta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
-msgstr ""
+msgstr "Liste over understøttede valutakoder"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
-msgstr ""
+msgstr "Valuta Opdaterings Interval"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
-msgstr ""
+msgstr "Maksimum tilladte downloadstørrelse for fjernbillede"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
-msgstr ""
+msgstr "Fornavn på brugeren"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
-msgstr ""
+msgstr "Efternavn"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
-msgstr ""
+msgstr "Efternavn på brugeren"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
-msgstr ""
+msgstr "Email adresse på brugeren"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
-msgstr ""
+msgstr "Personale"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
-msgstr ""
+msgstr "Har denne bruger personale tilladelser"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
-msgstr ""
+msgstr "Superbruger"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
-msgstr ""
+msgstr "Er denne bruger en superbruger"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
-msgstr ""
+msgstr "Er denne brugerkonto aktiv"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
-msgstr ""
+msgstr "Kun en superbruger kan justere dette felt"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
-msgstr ""
+msgstr "Adgangskode"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
-msgstr ""
+msgstr "Brugers adgangskode"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
-msgstr ""
+msgstr "Tilsidesæt advarsel"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
-msgstr ""
+msgstr "Tilsidesæt advarslen om adgangskode regler"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
-msgstr ""
+msgstr "Du har ikke tilladelse til at oprette brugere"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
-msgstr ""
+msgstr "Din konto er oprettet."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
-msgstr ""
+msgstr "Benyt funktionen til nulstilling af adgangskode til at logge ind"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
-msgstr ""
+msgstr "Velkommen til InvenTree"
diff --git a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po
index c89044ca68..25daa77a88 100644
--- a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Language: de_DE\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API-Endpunkt nicht gefunden"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Ungültige Artikelliste angegeben"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Filter müssen als Dict gegeben sein"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Ungültige Filter angegeben"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Alle Filter dürfen nur mit true verwendet werden"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Keine Gegenstände erfüllen die vorgegebenen Kriterien"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Keine Daten verfügbar"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Benutzer hat keine Berechtigung, dieses Modell anzuzeigen"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Konnte {original} nicht in {unit} umwandeln"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Keine gültige Menge"
@@ -112,13 +112,13 @@ msgstr "Datum eingeben"
msgid "Invalid decimal value"
msgstr "Ungültiger Dezimalwert"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Notizen"
@@ -171,35 +171,35 @@ msgstr "Entferne HTML-Tags von diesem Wert"
msgid "Data contains prohibited markdown content"
msgstr "Daten enthalten verbotene Markdown-Inhalte"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Verbindungsfehler"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Server antwortete mit ungültigem Statuscode"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Ausnahme aufgetreten"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Server antwortete mit ungültigem Wert für die Inhaltslänge"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Bild ist zu groß"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Bilddownload überschreitet maximale Größe"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Remote-Server gab leere Antwort zurück"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Angegebene URL ist kein gültiges Bild"
@@ -207,11 +207,11 @@ msgstr "Angegebene URL ist kein gültiges Bild"
msgid "Log in to the app"
msgstr "Bei der App anmelden"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Email"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Sie müssen die Zwei-Faktor-Authentifizierung aktivieren, bevor Sie etwas tun können."
@@ -255,135 +255,135 @@ msgstr "Referenz muss erforderlichem Muster entsprechen"
msgid "Reference number is too large"
msgstr "Referenznummer ist zu groß"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Ungültige Auswahl"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Name"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Beschreibung"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Beschreibung (optional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Pfad"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Doppelte Namen können nicht unter dem selben Elternteil existieren"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown Notizen (optional)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Barcode-Daten"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Drittanbieter-Barcode-Daten"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Barcode-Hash"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Eindeutiger Hash der Barcode-Daten"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Bestehender Barcode gefunden"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Aufgabe fehlgeschlagen"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Hintergrundarbeiteraufgabe '{f}' fehlgeschlagen nach {n} Versuchen"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serverfehler"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Ein Fehler wurde vom Server protokolliert."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Bild"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Muss eine gültige Nummer sein"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Währung"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Währung aus verfügbaren Optionen auswählen"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Ungültiger Wert"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Grafiken aus externen Quellen"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL der Remote-Bilddatei"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Das Herunterladen von Bildern von Remote-URLs ist nicht aktiviert"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Fehler beim Herunterladen des Bildes von entfernter URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "Content type stimmt nicht mit der benötigten Mixin-Klasse überein"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -553,8 +553,8 @@ msgstr "Ungültige physikalische Einheit"
msgid "Not a valid currency code"
msgstr "Kein gültiger Währungscode"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Bestellstatus"
@@ -562,21 +562,21 @@ msgstr "Bestellstatus"
msgid "Parent Build"
msgstr "Eltern-Bauauftrag"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Varianten einschließen"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Varianten einschließen"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Varianten einschließen"
msgid "Part"
msgstr "Teil"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategorie"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr "Baum ausschließen"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Bauauftrag muss abgebrochen werden, bevor er gelöscht werden kann"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Verbrauchsmaterial"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Optional"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Baugruppe"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Nachverfolgt"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Prüfbar"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Offene Bestellung"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Zugeordnet"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Verbraucht"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Verfügbar"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Bestellt"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Bauauftrag"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Lagerort"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Bauprodukt"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "Zieldatum muss nach dem Startdatum liegen"
msgid "Build Order Reference"
msgstr "Bauauftragsreferenz"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Auftrag Referenz"
msgid "SalesOrder to which this build is allocated"
msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Quell-Lagerort"
@@ -857,17 +857,17 @@ msgstr "Bauauftrags-Status"
msgid "Build status code"
msgstr "Bau-Statuscode"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Losnummer"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Losnummer für dieses Endprodukt"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Erstelldatum"
@@ -887,7 +887,7 @@ msgstr "geplantes Fertigstellungsdatum"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Zieldatum für Bauauftrag-Fertigstellung."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Fertigstellungsdatum"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Nutzer der diesen Bauauftrag erstellt hat"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Verantwortlicher Benutzer"
@@ -913,12 +913,12 @@ msgstr "Verantwortlicher Benutzer"
msgid "User or group responsible for this build order"
msgstr "Benutzer oder Gruppe verantwortlich für diesen Bauauftrag"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Externer Link"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link zu einer externen URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Priorität dieses Bauauftrags"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Projektcode"
@@ -960,7 +960,7 @@ msgstr "Bauauftrag {build} wurde fertiggestellt"
msgid "A build order has been completed"
msgstr "Ein Bauauftrag wurde fertiggestellt"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Seriennummern müssen für nachverfolgbare Teile angegeben werden"
@@ -976,23 +976,23 @@ msgstr "Endprodukt bereits hergstellt"
msgid "Build output does not match Build Order"
msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Anzahl muss größer Null sein"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Menge kann nicht größer als die Ausgangsmenge sein"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Build Ausgabe {serial} hat nicht alle erforderlichen Tests bestanden"
@@ -1001,18 +1001,18 @@ msgstr "Build Ausgabe {serial} hat nicht alle erforderlichen Tests bestanden"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Bauauftragsposition"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Objekt bauen"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Objekt bauen"
msgid "Quantity"
msgstr "Anzahl"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Erforderliche Menge für Auftrag"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
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:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Ausgewählter Lagerbestand stimmt nicht mit BOM-Linie überein"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein"
+
+#: build/models.py:1869
#, 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:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "BestandObjekt ist zu oft zugewiesen"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Reserviermenge muss größer null sein"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Ausgewählter Lagerbestand stimmt nicht mit BOM-Linie überein"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Lagerartikel"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Quell-Lagerartikel"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Anzahl an Lagerartikel dem Bauauftrag zuweisen"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Installiere in"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Ziel-Lagerartikel"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Name des Teils"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Endprodukt"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Endprodukt stimmt nicht mit übergeordnetem Bauauftrag überein"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Endprodukt entspricht nicht dem Teil des Bauauftrags"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Dieses Endprodukt wurde bereits fertiggestellt"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Menge der Endprodukte angeben"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Ganzzahl für verfolgbare Teile erforderlich"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Seriennummer"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Seriennummer für dieses Endprodukt eingeben"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Lagerort für Bauprodukt"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Seriennummern automatisch zuweisen"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Benötigte Lagerartikel automatisch mit passenden Seriennummern zuweisen"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Die folgenden Seriennummern existieren bereits oder sind ungültig"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Eine Liste von Endprodukten muss angegeben werden"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Lagerort für ausgemusterte Ausgänge"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Zuteilungen verwerfen"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Bestandszuteilung für ausgemusterte Endprodukte verwerfen"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Grund für das Verwerfen des Bauauftrages/der Bauaufträge"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Lagerort für fertige Endprodukte"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Unvollständige Zuweisung akzeptieren"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Endprodukte fertigstellen, auch wenn Bestand nicht fertig zugewiesen wurde"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Zugewiesen Bestand verbrauchen"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Verbrauche alle Bestände, die diesem Bauauftrag bereits zugewiesen wurden"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Unfertige Endprodukte entfernen"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Lösche alle noch nicht abgeschlossenen Endprodukte"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Nicht erlaubt"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Als von diesem Bauauftrag verbraucht setzen"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Bestandszuordnung vor dem Abschluss dieses Bauauftrags freigeben"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Überbelegter Lagerbestand"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Wie sollen zusätzliche Lagerbestandteile, die dem Bauauftrag zugewiesen wurden, behandelt werden"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Der Bestand einiger Lagerartikel ist überbelegt"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Nicht zugewiesene akzeptieren"
-#: build/serializers.py:795
+#: build/serializers.py:777
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:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Unvollständig Zuweisung akzeptieren"
-#: build/serializers.py:813
+#: build/serializers.py:795
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:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Bauauftrag hat unvollständige Aufbauten"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Bauauftragsposition"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Endprodukt"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Bauauftragspositionsartikel"
-#: build/serializers.py:946
+#: build/serializers.py:928
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:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Teil muss auf Lager sein"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Verfügbare Menge ({q}) überschritten"
-#: build/serializers.py:1011
+#: build/serializers.py:993
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:1019
+#: build/serializers.py:1001
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:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Zuweisungen müssen angegeben werden"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
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:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Lagerort ausschließen"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Lagerartikel vom ausgewählten Ort ausschließen"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Wechselbares Lagerbestand"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Lagerartikel an mehreren Standorten können austauschbar verwendet werden"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Ersatzbestand"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Zuordnung von Ersatzteilen erlauben"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Optionale Positionen"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Optionale Stücklisten-Positionen dem Bauauftrag hinzufügen"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Fehler beim Starten der automatischen Zuweisung"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Stücklisten-Referenz"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Zusammenbau"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Zuliefererteil"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Zugewiesene Menge"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Nachverfolgbar"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Vererbt"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Varianten zulassen"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Stücklisten-Position"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "In Produktion"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Externes Lager"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Verfügbarer Bestand"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Verfügbares Ersatzmaterial"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Überfälliger Bauauftrag"
msgid "Build order {bo} is now overdue"
msgstr "Bauauftrag {bo} ist jetzt überfällig"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Link"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Datei"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Benutzer hat keine Berechtigung zum Löschen des Anhangs"
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr "Kein Plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Aktualisiert"
@@ -1558,7 +1554,7 @@ msgstr "Projektbeschreibung"
msgid "User or group responsible for this project"
msgstr "Benutzer oder Gruppe verantwortlich für dieses Projekt"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr "Schlüsseltext muss eindeutig sein"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Benutzer"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Preisstaffelungs Anzahl"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Preis"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Stückpreis für die angegebene Anzahl"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Endpunkt"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Endpunkt, an dem dieser Webhook empfangen wird"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Name für diesen Webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktiv"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Ist dieser Webhook aktiv"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token für Zugang"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Geheimnis"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Shared Secret für HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Nachrichten-ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Eindeutige Kennung für diese Nachricht"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Host"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Host von dem diese Nachricht empfangen wurde"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Kopfzeile"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Header dieser Nachricht"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Body"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Body dieser Nachricht"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Endpunkt, über den diese Nachricht empfangen wurde"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Bearbeitet"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Wurde die Arbeit an dieser Nachricht abgeschlossen?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "ID"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Titel"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Link"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Veröffentlicht"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Zusammenfassung"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Gelesen"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Wurde diese Nachricht gelesen?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Bilddatei"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Benutzerdefinierte Einheit"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Einheitensymbol muss eindeutig sein"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Einheitsname muss eine gültige Kennung sein"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Einheitsname"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Optionales Einheitssymbol"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definition"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Einheitsdefinition"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Anhang"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Fehlende Datei"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Fehlender externer Link"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Modelltyp"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Datei zum Anhängen auswählen"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Kommentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Upload Datum"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Datum der hochgeladenen Datei"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Dateigröße"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Dateigröße in Bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Ungültiger Modelltyp für Anhang angegeben"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Wert"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Name des Bundeslandes"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Bezeichnung"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Bezeichnung, die im Frontend angezeigt wird"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Farbe"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Farbe, die im Frontend angezeigt wird"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Name muss sich von den Namen des Referenzstatus unterscheiden"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Auswahlliste"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Auswahllisten"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Name der Auswahlliste"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Beschreibung der Auswahlliste"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Gesperrt"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Ist diese Auswahlliste gesperrt?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Kann diese Auswahlliste benutzt werden?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Standardeintrag"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Erstellt"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Zuletzt aktualisiert"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Parameter Vorlage"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Checkbox-Parameter können keine Einheiten haben"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Checkbox-Parameter können keine Auswahl haben"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Auswahl muss einzigartig sein"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Vorlagen-Name des Parameters muss eindeutig sein"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Name des Parameters"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Einheiten"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Physikalische Einheiten für diesen Parameter"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Parameter-Beschreibung"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Checkbox"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Ist dieser Parameter eine Checkbox?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Auswahlmöglichkeiten"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Gültige Optionen für diesen Parameter (durch Kommas getrennt)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Aktiviert"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Ungültige Auswahl für Parameterwert"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Vorlage"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Wert"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Parameter Wert"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Parameter Wert"
msgid "Note"
msgstr "Notiz"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Optionales Notizfeld"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
-msgstr "Barcodescan"
+msgstr "Barcode Scan"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Zeitstempel"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontext"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Ergebnis"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Angekündigt"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Gesendet"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Fehlgeschlagen"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Zugestellt"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Bestätigt"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Eingehend"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Ausgehend"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Keine Rückmeldung"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Schlüssel"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} storniert"
msgid "A order that is assigned to you was canceled"
msgstr "Eine Bestellung, die Ihnen zugewiesen war, wurde storniert"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Artikel erhalten"
@@ -2351,93 +2347,101 @@ msgstr "Artikel wurden aus einer Bestellung erhalten"
msgid "Items have been received against a return order"
msgstr "Artikel wurden aus einer Rücksendung erhalten"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Wird ausgeführt"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Anstehende Aufgaben"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Geplante Aufgaben"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Fehlgeschlagene Aufgaben"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Aufgabe-ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Eindeutige Aufgaben-ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Sperren"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Sperrzeit"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Aufgabenname"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funktion"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Funktionsname"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Parameter"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Aufgaben-Parameter"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Schlüsselwort Parameter"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Schlüsselwort Parameter für Aufgaben"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Dateiname"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Modelltyp"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Benutzer hat keine Berechtigung, Anhänge für dieses Modell zu erstellen oder zu bearbeiten"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Keine Gruppe"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Seiten-URL ist durch die Konfiguration gesperrt"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Neustart erforderlich"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Eine Einstellung wurde geändert, die einen Neustart des Servers erfordert"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Ausstehende Migrationen"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Anzahl der ausstehenden Datenbankmigrationen"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Name der Serverinstanz"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Kurze Beschreibung der Instanz"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Name der Instanz verwenden"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Den Namen der Instanz in der Titelleiste verwenden"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Anzeige von `Über` einschränken"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Zeige das `Über` Fenster nur Administratoren"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Firmenname"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "interner Firmenname"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Basis-URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Basis-URL für dieses Instanz"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Standardwährung"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Wählen Sie die Basiswährung für Preisberechnungen aus"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Verfügbare Währungen"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Liste der unterstützten Währungskürzel"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Währungsaktualisierungsintervall"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Wie oft Wechselkurse aktualisiert werden sollen (auf Null zum Deaktivieren setzen)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "Tage"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Währungs-Aktualisierungs-Plugin"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Zu verwendendes Währungs-Aktualisierungs-Plugin"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Von URL herunterladen"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Herunterladen von externen Bildern und Dateien von URLs erlaubt"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Download-Größenlimit"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maximal zulässige Größe für heruntergeladene Bilder"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Benutzer-Agent zum Herunterladen von Daten"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Überschreiben des Benutzer-Agenten, der verwendet wird, um Bilder und Dateien von externer Servern herunterzuladen (leer für die Standardeinstellung)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Strenge URL-Prüfung"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Erfordert die Schema-Spezifikation bei der Validierung von URLs"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Prüfungsintervall aktualisieren"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Wie oft soll nach Updates gesucht werden? (auf 0 setzen zum Deaktivieren)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatische Sicherung"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Automatische Sicherung der Datenbank- und Mediendateien aktivieren"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervall für automatische Sicherung"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Anzahl der Tage zwischen automatischen Sicherungen"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Aufgabenlöschinterval"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Ergebnisse der Hintergrundaufgabe werden nach der angegebenen Anzahl von Tagen gelöscht"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Löschintervall für Fehlerprotokolle"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Fehlerprotokolle werden nach der angegebenen Anzahl von Tagen gelöscht"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Löschintervall für Benachrichtigungen"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Benutzerbenachrichtigungen werden nach der angegebenen Anzahl von Tagen gelöscht"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Bacode-Feature verwenden"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Barcode-Scanner Unterstützung im Webinterface aktivieren"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Barcode-Eingabeverzögerung"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Verzögerungszeit bei Barcode-Eingabe"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Barcode Webcam-Unterstützung"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Barcode-Scannen über Webcam im Browser erlauben"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Artikelrevisionen"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Revisions-Feld für Artikel aktivieren"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Löschen aus Baugruppe erlauben"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Erlaube das Löschen von Teilen, die in einer Baugruppe verwendet werden"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "RegEx Muster für die Zuordnung von Teil-IPN"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Mehrere Artikel mit gleicher IPN erlaubt"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Mehrere Artikel mit gleicher IPN erlaubt"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Ändern von IPN erlaubt"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Ändern der IPN während des Bearbeiten eines Teils erlaubt"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Teil-Stückliste kopieren"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Stückliste von Teil kopieren wenn das Teil dupliziert wird "
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Teil-Parameter kopieren"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Parameter-Daten für dieses Teil kopieren wenn das Teil dupliziert wird"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Teil-Testdaten kopieren"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Test-Daten für dieses Teil kopieren wenn das Teil dupliziert wird"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kategorie-Parametervorlage kopieren"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Teile sind standardmäßig Vorlagen"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponente"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Teile können standardmäßig in Baugruppen benutzt werden"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Kaufbar"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Artikel sind grundsätzlich kaufbar"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Verkäuflich"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Artikel sind grundsätzlich verkaufbar"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Artikel sind grundsätzlich verfolgbar"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuell"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Teile sind grundsätzlich virtuell"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Verwandte Teile anzeigen"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Verwandte Teile eines Teils anzeigen"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Initialer Lagerbestand"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Erstellen von Lagerbestand beim Hinzufügen eines neuen Teils erlauben"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Initiale Lieferantendaten"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Erstellen von Lieferantendaten beim Hinzufügen eines neuen Teils erlauben"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Anzeigeformat für Teilenamen"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Format für den Namen eines Teiles"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Standardsymbol der Teilkategorie"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Standardsymbol der Teilkategorie (leer bedeutet kein Symbol)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Dezimalstellen für minimalen Preis"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Mindestanzahl der Dezimalstellen bei der Darstellung der Preisdaten"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Dezimalstellen für maximalen Preis"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Maximale Anzahl der Dezimalstellen bei der Darstellung der Preisdaten"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Zulieferer-Preise verwenden"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Lieferanten-Staffelpreise in die Gesamt-Preisberechnungen einbeziehen"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Kaufverlauf überschreiben"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Historische Bestellungspreise überschreiben die Lieferanten-Staffelpreise"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Lagerartikel-Preis verwenden"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Preise aus manuell eingegebenen Lagerdaten für Preisberechnungen verwenden"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Lagerartikelpreis Alter"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Lagerartikel, die älter als diese Anzahl an Tagen sind, von der Preisberechnung ausschließen"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Variantenpreise verwenden"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Variantenpreise in die Gesamt-Preisberechnungen einbeziehen"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Nur aktive Varianten"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Nur aktive Variantenteile zur Berechnung der Variantenbepreisung verwenden"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervall für Neuberechnung von Preisen"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Anzahl der Tage bis die Teile-Preisberechnungen automatisch aktualisiert werden"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Interne Preise"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Interne Preise für Teile aktivieren"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Interne Preisüberschreibung"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Falls verfügbar, überschreiben interne Preise Preispannenberechnungen"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Labeldruck aktivieren"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Labeldruck über die Website aktivieren"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Label Bild DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "DPI-Auflösung bei der Erstellung von Bilddateien für Etikettendruck-Plugins"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Berichte aktivieren"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Berichterstellung aktivieren"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Entwickler-Modus"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Berichte im Entwickler-Modus generieren (als HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Berichtsfehler protokollieren"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Fehler, die beim Erstellen von Berichten auftreten, protokollieren"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Seitengröße"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Standardseitenformat für PDF-Bericht"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Parameter Einheiten durchsetzen"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Wenn Einheiten angegeben werden, müssen die Parameterwerte mit den angegebenen Einheiten übereinstimmen"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Global einzigartige Seriennummern"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Seriennummern für Lagerartikel müssen global eindeutig sein"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Erschöpften Lagerartikel löschen"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Legt das Standardverhalten fest, wenn ein Lagerartikel aufgebraucht ist"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Losnummer Vorlage"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Vorlage für die Generierung von Standard-Losnummern für Lagerbestände"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Bestands-Ablauf"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Ablaufen von Bestand ermöglichen"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Abgelaufenen Bestand verkaufen"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Verkauf von abgelaufenem Bestand erlaubt"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Bestands-Stehzeit"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
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/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Abgelaufenen Bestand verbauen"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Verbauen von abgelaufenen Bestand erlaubt"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Bestands-Eigentümerkontrolle"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Eigentümerkontrolle für Lagerorte und Teile aktivieren"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Standardsymbol für Lagerort"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Standardsymbol für Lagerstandort (leer bedeutet kein Symbol)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Zeige installierte Lagerartikel"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Anzeige der installierten Lagerartikel in Bestandstabellen"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Prüfe BOM bei der Installation von Elementen"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Installierte Lagerbestandteile müssen im BOM für den übergeordneten Teil vorhanden sein"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Erlaube Verschieben von \"nicht auf Lager\" Bestand"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Lagerartikel, die nicht auf Lager sind, können zwischen Lagerstandorten übertragen werden"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Bauauftragsreferenz-Muster"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bauaufträge"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Verantwortlicher Besitzer erforderlich"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Jeder Bestellung muss ein verantwortlicher Besitzer zugewiesen werden"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blockieren bis Test bestanden"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Verhindert die Fertigstellung bis alle erforderlichen Tests bestanden sind"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Rücksendungen aktivieren"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Aktivieren der Rücksendung-Funktion in der Benutzeroberfläche"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Referenz Muster für Rücksendungen"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Rücksendungen"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Abgeschlossene Rücksendungen bearbeiten"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Bearbeitung von Rücksendungen nach Abschluss erlauben"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Auftragsreferenz-Muster"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Aufträge"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Auftrag Standardsendung"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Erstelle eine Standardsendung für Aufträge"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Abgeschlossene Aufträge bearbeiten"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Bearbeitung von Aufträgen nach Versand oder Abschluss erlauben"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Versendete Bestellungen als abgeschlossen markieren"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Als versendet markierte Aufträge werden automatisch abgeschlossen und überspringen den Status \"Versandt\""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Bestellungsreferenz-Muster"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bestellungen"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Abgeschlossene Einkaufsaufträge bearbeiten"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Bearbeitung von Einkaufsaufträgen nach Versand oder Abschluss erlauben"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Bestellungen automatisch abschließen"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Bestellung automatisch als abgeschlossen markieren, wenn der Empfang aller Artikel bestätigt wurde"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Passwort vergessen aktivieren"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Passwort-vergessen-Funktion auf den Anmeldeseiten aktivieren"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Registrierung erlauben"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Selbstregistrierung für Benutzer auf den Anmeldeseiten aktivieren"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "SSO aktivieren"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "SSO auf den Anmeldeseiten aktivieren"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "SSO Selbstregistrierung aktivieren"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Selbstregistrierung über SSO für Benutzer auf den Anmeldeseiten aktivieren"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "SSO Gruppensynchronisation aktivieren"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSO Gruppenschlüssel"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email-Adresse erforderlich"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Benutzer müssen bei der Registrierung eine E-Mail angeben"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "SSO-Benutzer automatisch ausfüllen"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Benutzer-Details automatisch aus SSO-Konto ausfüllen"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "E-Mail zweimal"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Bei der Registrierung den Benutzer zweimal nach der E-Mail-Adresse fragen"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Passwort zweimal"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Bei der Registrierung den Benutzer zweimal nach dem Passwort fragen"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Erlaubte Domains"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Anmeldung auf bestimmte Domänen beschränken (kommagetrennt, beginnend mit @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Gruppe bei Registrierung"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "MFA erzwingen"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Benutzer müssen Multifaktor-Authentifizierung verwenden."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Plugins beim Start prüfen"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Beim Start überprüfen, ob alle Plugins installiert sind - Für Container aktivieren"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Nach Plugin-Aktualisierungen suchen"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Periodische Überprüfungen auf Updates für installierte Plugins aktivieren"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "URL-Integration aktivieren"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Plugins zum Hinzufügen von URLs aktivieren"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Navigations-Integration aktivieren"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Plugins zur Integration in die Navigation aktivieren"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "App-Integration aktivieren"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Plugins zum Hinzufügen von Apps aktivieren"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Terminplan-Integration aktivieren"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Geplante Aufgaben aktivieren"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Ereignis-Integration aktivieren"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Plugins ermöglichen auf interne Ereignisse zu reagieren"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Externe Standorte ausschließen"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Automatische Inventur-Periode"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Vollständige Namen von Benutzern anzeigen"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Vollständigen Namen von Benutzern anstatt Benutzername anzeigen"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Teststation-Daten aktivieren"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Teststation-Datenerfassung für Testergebnisse aktivieren"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "Teil ist aktiv"
msgid "Manufacturer is Active"
msgstr "Hersteller ist aktiv"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Lieferantenteil ist aktiv"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Internes Teil ist aktiv"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Lieferant ist aktiv"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Hersteller"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Firma"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr "Kontakt-Telefon"
msgid "Contact email address"
msgstr "Kontakt-Email"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakt"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adresse"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adressen"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Firma auswählen"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Adresstitel"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Titel zur Beschreibung des Adresseintrages"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Primäre Adresse"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Als primäre Adresse festlegen"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Linie 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adresszeile 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Linie 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Adresszeile 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Postleitzahl"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Stadt/Region"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Postleitzahl Stadt/Region"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Staat/Provinz"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Bundesland"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Land"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Adresse Land"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Versandnotizen"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notizen für Versandkurier"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Interne Versandnotizen"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Versandnotizen für interne Verwendung"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Link zu Adressinformationen (extern)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Herstellerteil"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Basisteil"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Teil auswählen"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Hersteller auswählen"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Hersteller-Teilenummer"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "Externe URL für das Herstellerteil"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Teilbeschreibung des Herstellers"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Packeinheiten müssen mit den Basisteileinheiten kompatibel sein"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Packeinheiten müssen größer als Null sein"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Zulieferer"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Zulieferer auswählen"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Lagerbestandseinheit (SKU) des Zulieferers"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Ist dieser Lieferantenteil aktiv?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Herstellerteil auswählen"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "Teil-URL des Zulieferers"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Zuliefererbeschreibung des Teils"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "Basiskosten"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Mindestpreis"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Verpackungen"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Teile-Verpackungen"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Packmenge"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Gesamtmenge, die in einer einzelnen Packung geliefert wird. Für Einzelstücke leer lassen."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "Vielfache"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Mehrere bestellen"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Verfügbare Menge von Lieferanten"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Verfügbarkeit aktualisiert"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Datum des letzten Updates der Verfügbarkeitsdaten"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Standard-Währung für diesen Zulieferer"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Firmenname"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Auf Lager"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr "Fehler"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Gültig"
@@ -4530,7 +4530,7 @@ msgstr "Anzahl der zu druckenden Kopien für jedes Label"
msgid "Connected"
msgstr "Verbunden"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Unbekannt"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Bestellreferenz"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Ausstehend"
@@ -4670,7 +4670,7 @@ msgstr "Ausstehend"
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Erstellt von"
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr "Hat Preise"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Bestellung"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Bestellung abgeschlossen"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Internes Teil"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Bestellung ausstehend"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Fertig"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Bestellung"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Bestellung"
msgid "Sales Order"
msgstr "Auftrag"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Gesamtpreis"
msgid "Total price for this order"
msgstr "Gesamtpreis für diese Bestellung"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Auftragswährung"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Währung für diesen Auftrag (leer lassen, um Firmenstandard zu verwenden)"
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Auftragsbeschreibung (optional)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Projektcode für diesen Auftrag auswählen"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link auf externe Seite"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Zieldatum"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Geplantes Lieferdatum für Auftrag."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Aufgabedatum"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Datum an dem die Bestellung aufgegeben wurde"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Nutzer oder Gruppe der/die für diesen Auftrag zuständig ist/sind"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Ansprechpartner für diesen Auftrag"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Firmenadresse für diesen Auftrag"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Bestell-Referenz"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Bestellungs-Status"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Firma bei der die Teile bestellt werden"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Zulieferer-Referenz"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Zulieferer Bestellreferenz"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "Empfangen von"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Datum an dem der Auftrag fertigstellt wurde"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Ziel-Lager"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Teile-Zulieferer muss dem Zulieferer der Bestellung entsprechen"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Position stimmt nicht mit Kaufauftrag überein"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Anzahl muss eine positive Zahl sein"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Kunde"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Firma an die die Teile verkauft werden"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Kundenreferenz"
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Bestellreferenz"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Versanddatum"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "Versand von"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Bestellung ist bereits abgeschlossen"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Bestellung ist bereits storniert"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Nur ein offener Auftrag kann als abgeschlossen markiert werden"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Auftrag kann nicht abgeschlossen werden, da unvollständige Sendungen vorhanden sind"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Auftrag kann nicht abgeschlossen werden, da es unvollständige Positionen gibt"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Anzahl"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Position - Referenz"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Position - Notizen"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Zieldatum für diesen Einzelposten (leer lassen, um das Zieldatum des Auftrags zu verwenden)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Positionsbeschreibung (optional)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Zusätzlicher Kontext für diese Zeile"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Stückpreis"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Lieferantenteil muss mit Lieferant übereinstimmen"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Zuliefererteil"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Empfangen"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Empfangene Objekt-Anzahl"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Preis"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Preis pro Einheit"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Kontrolliert von"
msgid "User who checked this shipment"
msgstr "Benutzer, der diese Sendung kontrolliert hat"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Sendung"
@@ -5164,7 +5164,11 @@ msgstr "Kann Lagerartikel keiner Zeile ohne Teil hinzufügen"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Die zugeordnete Anzahl darf nicht die verfügbare Anzahl überschreiten"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Reserviermenge muss größer null sein"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein"
@@ -5172,7 +5176,7 @@ msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein"
msgid "Sales order does not match shipment"
msgstr "Auftrag gehört nicht zu Sendung"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Sendung gehört nicht zu Auftrag"
@@ -5256,247 +5260,247 @@ msgstr "Kosten für die Rückgabe oder Reparatur dieses Objektes"
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Positionen"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Abgeschlossene Positionen"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Lieferant"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Bestellung kann nicht verworfen werden"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Erlaube das Schließen des Auftrags mit unvollständigen Positionen"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Auftrag hat unvollständige Positionen"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Der Auftrag ist nicht offen"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Automatische Preisgestaltung"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Kaufpreis automatisch basierend auf Lieferantenbestandsdaten berechnen"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Kaufpreiswährung"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Elemente zusammenfügen"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Zusammenführen von Elementen mit dem gleichen Teil, Ziel- und Zieldatum zu einem Zeilenelement"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Lieferanten-Teilenummer"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Interne Teilenummer"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Zuliefererteil muss ausgewählt werden"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Bestellung muss angegeben sein"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Lieferant muss mit der Bestellung übereinstimmen"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Die Bestellung muss mit dem Lieferant übereinstimmen"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Position"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Zielort für empfangene Teile auswählen"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Losnummer für eingehende Lagerartikel"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Ablaufdatum"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Seriennummern für eingehende Lagerartikel"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Barcode"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Gescannter Barcode"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Barcode ist bereits in Verwendung"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Positionen müssen angegeben werden"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Ziel-Lagerort muss angegeben werden"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Barcode muss eindeutig sein"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Abgeschlossene Sendungen"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Verkaufspreis-Währung"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Keine Sendungsdetails angegeben"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Position ist nicht diesem Auftrag zugeordnet"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Anzahl muss positiv sein"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Seriennummern zum Zuweisen eingeben"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Sendung wurde bereits versandt"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Sendung ist nicht diesem Auftrag zugeordnet"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Folgende Serienummern konnten nicht gefunden werden"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Artikel der Bestellzeile zurücksenden"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Artikel entspricht nicht der Rücksendeschrift"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Artikel wurde bereits erhalten"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Artikel können nur bei laufenden Bestellungen empfangen werden"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Verkaufspreis-Währung"
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr "Verwendet"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Teil-Kategorie"
@@ -5656,7 +5660,7 @@ msgstr "Teil-Kategorie"
msgid "Part Categories"
msgstr "Teil-Kategorien"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Standard-Lagerort"
@@ -5664,7 +5668,7 @@ msgstr "Standard-Lagerort"
msgid "Default location for parts in this category"
msgstr "Standard-Lagerort für Teile dieser Kategorie"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Strukturell"
@@ -5680,12 +5684,12 @@ msgstr "Standard Stichwörter"
msgid "Default keywords for parts in this category"
msgstr "Standard-Stichworte für Teile dieser Kategorie"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Symbol"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Symbol (optional)"
@@ -5693,655 +5697,655 @@ msgstr "Symbol (optional)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Sie können diese Teilekategorie nicht als strukturell festlegen, da ihr bereits Teile zugewiesen sind!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Standard-Wert"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Standard Parameter Wert"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Teile"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Dieses Teil kann nicht gelöscht werden, da es noch aktiv ist"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Dieses Teil kann nicht gelöscht werden, da es in einem Bauauftrag verwendet wird"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Teil '{self}' kann in der Stückliste nicht für '{parent}' (rekursiv) verwendet werden"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Teil '{parent}' wird in der Stückliste für '{self}' (rekursiv) verwendet"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN muss mit Regex-Muster {pattern} übereinstimmen"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Teil mit diesem Namen, IPN und Revision existiert bereits."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Strukturellen Teilekategorien können keine Teile zugewiesen werden!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Name des Teils"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Ist eine Vorlage"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Ist dieses Teil eine Vorlage?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Ist dieses Teil eine Variante eines anderen Teils?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variante von"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Artikelbeschreibung (optional)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Schlüsselwörter"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Teile-Kategorie"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN (Interne Produktnummer)"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Revisions- oder Versionsnummer"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Version"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Wo wird dieses Teil normalerweise gelagert?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Standard Zulieferer"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Standard Zuliefererteil"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Standard Ablaufzeit"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimaler Bestand"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Minimal zulässiger Bestand"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Maßeinheit für diesen Teil"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Hat dieses Teil Tracking für einzelne Objekte?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Kann dieses Teil an Kunden verkauft werden?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Ist dieses Teil aktiv?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
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:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Prüfsumme der Stückliste"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Prüfsumme der Stückliste gespeichert"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Stückliste kontrolliert von"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "BOM Kontrolldatum"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Erstellungs-Nutzer"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Verantwortlicher Besitzer für dieses Teil"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Mehrere verkaufen"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Währung für die Berechnung der Preise im Cache"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimale Stücklisten Kosten"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Minimale Kosten für Teile"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maximale Stücklisten Kosten"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Maximale Kosten für Teile"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimale Einkaufskosten"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Minimale historische Kaufkosten"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maximale Einkaufskosten"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Maximale historische Einkaufskosten"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimaler interner Preis"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Minimale Kosten basierend auf den internen Staffelpreisen"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maximaler interner Preis"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Maximale Kosten basierend auf internen Preisstaffeln"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Minimaler Lieferantenpreis"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Mindestpreis für Teil von externen Lieferanten"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Maximaler Lieferantenpreis"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Maximaler Preis für Teil von externen Lieferanten"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Minimale Variantenkosten"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Berechnete minimale Kosten für Variantenteile"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Maximale Variantenkosten"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Berechnete maximale Kosten für Variantenteile"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimale Kosten"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Mindestkosten überschreiben"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maximale Kosten"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Maximale Kosten überschreiben"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Berechnete Mindestkosten"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Berechnete Maximalkosten"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Mindestverkaufspreis"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Mindestverkaufspreis basierend auf Staffelpreisen"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Maximaler Verkaufspreis"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Maximalverkaufspreis basierend auf Staffelpreisen"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Mindestverkaufskosten"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Minimaler historischer Verkaufspreis"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Maximale Verkaufskosten"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Maximaler historischer Verkaufspreis"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Teil für die Inventur"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Stückzahl"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Anzahl einzelner Bestandseinträge zum Zeitpunkt der Inventur"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Insgesamt verfügbarer Lagerbestand zum Zeitpunkt der Inventur"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Datum"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Datum der Inventur"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Mindestbestandswert"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Geschätzter Mindestwert des vorhandenen Bestands"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maximaler Bestandswert"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Geschätzter Maximalwert des vorhandenen Bestands"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Ungültiger Vorlagenname - es muss mindestens ein alphanumerisches Zeichen enthalten sein"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Testvorlage mit demselben Schlüssel existiert bereits für Teil"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Test-Name"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Namen für diesen Test eingeben"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Testschlüssel"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Vereinfachter Schlüssel zum Test"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Test-Beschreibung"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Beschreibung für diesen Test eingeben"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Ist dieser Test aktiviert?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Benötigt"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Muss dieser Test erfolgreich sein?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Erfordert Wert"
-#: part/models.py:3781
+#: part/models.py:3762
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:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Anhang muss eingegeben werden"
-#: part/models.py:3788
+#: part/models.py:3769
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:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Gültige Optionen für diesen Test (durch Komma getrennt)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Ausgangsteil auswählen"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Untergeordnetes Teil"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Teil für die Nutzung in der Stückliste auswählen"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Diese Stücklisten-Position ist optional"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Diese Stücklisten-Position ist ein Verbrauchsartikel (sie wird nicht in Bauaufträgen verfolgt)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Referenz der Postion auf der Stückliste"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Notizen zur Stücklisten-Position"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Prüfsumme"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Prüfsumme der Stückliste"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "überprüft"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Diese Stücklistenposition wurde validiert"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Wird vererbt"
-#: part/models.py:4095
+#: part/models.py:4088
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:4101
+#: part/models.py:4094
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:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Menge muss eine Ganzzahl sein"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Zuliefererteil muss festgelegt sein"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Stücklisten Ersatzteile"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Übergeordnete Stücklisten Position"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Ersatzteil"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Teil 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Teil 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "verknüpftes Teil auswählen"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Teil-Beziehung kann nicht zwischen einem Teil und sich selbst erstellt werden"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Doppelte Beziehung existiert bereits"
@@ -6465,203 +6469,199 @@ msgstr "Herstellerteil mit dieser MPN existiert bereits"
msgid "Supplier part matching this SKU already exists"
msgstr "Lieferantenteil mit dieser SKU existiert bereits"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Kategoriename"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Im Bau"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Lagerartikel"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Zulieferer"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Gesamtbestand"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Nicht zugewiesenes Lager"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Alternatives Lager"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Teil duplizieren"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Initiale Daten von anderem Teil kopieren"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Initialer Lagerbestand"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Erstelle Teil mit Ausgangsbestand"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Lieferanteninformationen"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Lieferanteninformationen zu diesem Teil hinzufügen"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Kategorieparameter kopieren"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Parametervorlagen aus der ausgewählten Teilkategorie kopieren"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Vorhandenes Bild"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Dateiname eines vorhandenen Teilbildes"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Bilddatei existiert nicht"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Gesamte Stückliste validieren"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Herstellbar"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Niedrigster Preis"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Berechneten Wert für Mindestpreis überschreiben"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Mindestpreis Währung"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Höchster Preis"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Berechneten Wert für maximalen Preis überschreiben"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Maximalpreis Währung"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Aktualisieren"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Preis für dieses Teil aktualisieren"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Konnte nicht von den angegebenen Währungen in {default_currency} umrechnen"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Mindestpreis darf nicht größer als der Maximalpreis sein"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Der Maximalpreis darf nicht kleiner als der Mindestpreis sein"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Teil auswählen, von dem Stückliste kopiert wird"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Bestehende Daten entfernen"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Bestehende Stücklisten-Positionen vor dem Kopieren entfernen"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Vererbtes einschließen"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Stücklisten-Positionen einbeziehen, die von Vorlage-Teilen geerbt werden"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Ungültige Zeilen überspringen"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Aktiviere diese Option, um ungültige Zeilen zu überspringen"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Ersatzteile kopieren"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Ersatzteile beim Duplizieren von Stücklisten-Positionen kopieren"
@@ -6732,108 +6732,108 @@ msgstr "Keine Aktion angegeben"
msgid "No matching action found"
msgstr "Keine passende Aktion gefunden"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Keine Treffer für Barcode"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Treffer für Barcode gefunden"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Barcode entspricht einem bereits vorhandenen Artikel"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Keine passenden Teiledaten gefunden"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Keine passenden Zulieferteile gefunden"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Mehrere passende Zulieferteile gefunden"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Zulieferteil zugeordnet"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Artikel wurde bereits erhalten"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Mehrere passende Elemente gefunden"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Kein passendes Element gefunden"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Barcode stimmt nicht mit einem vorhandenen Lagerartikel überein"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Lagerartikel stimmt nicht mit dem Element überein"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Unzureichender Bestand verfügbar"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Lagerartikel der Bestellung zugeordnet"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Nicht genügend Informationen"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Weitere Informationen zum Empfang des Zeilenelements erforderlich"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Erhaltene Bestellartikel"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr "Bietet native Unterstützung für Barcodes"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr "InvenTree Maschinen-Etikettendrucker"
msgid "Provides support for printing using a machine"
msgstr "Unterstützt das Drucken mit einer Maschine"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "Zuletzt benutzt"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Optionen"
@@ -8072,7 +8072,7 @@ msgstr "Summe"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Seriennummer"
@@ -8142,7 +8142,7 @@ msgstr "Bilddatei nicht gefunden"
msgid "part_image tag requires a Part instance"
msgstr "part_image tag benötigt eine Bauteilinstanz"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "company_image tag erfordert eine Firmeninstanz"
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr "Unterorte in gefilterte Ergebnisse einbeziehen"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Übergeordneter Ort"
@@ -8311,314 +8311,314 @@ msgstr "Lagerstandorte Typen"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Standardsymbol für alle Orte, die kein Icon gesetzt haben (optional)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Bestand-Lagerort"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Bestand-Lagerorte"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Besitzer"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Besitzer auswählen"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Lagerartikel können nicht direkt an einen strukturellen Lagerort verlegt werden, können aber an einen untergeordneten Lagerort verlegt werden."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Extern"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Dies ist ein externer Lagerort"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Standorttyp"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Standortart dieses Standortes"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Sie können diesen Lagerort nicht als strukturell markieren, da sich bereits Lagerartikel darin befinden!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Lagerartikel können nicht in strukturelle Lagerorte abgelegt werden!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Für virtuelle Teile können keine Lagerartikel erstellt werden"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Artikeltyp ('{self.supplier_part.part}') muss {self.part} sein"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Anzahl muss für Objekte mit Seriennummer 1 sein"
-#: stock/models.py:961
+#: stock/models.py:947
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:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Teil kann nicht zu sich selbst gehören"
-#: stock/models.py:988
+#: stock/models.py:974
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:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Referenz verweist nicht auf das gleiche Teil"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Eltern-Lagerartikel"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Basis-Teil"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Passendes Zuliefererteil für diesen Lagerartikel auswählen"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Wo wird dieses Teil normalerweise gelagert?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Verpackung, in der dieser Lagerartikel gelagert ist"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "verbaut in"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Ist dieses Teil in einem anderen verbaut?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Seriennummer für dieses Teil"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Losnummer für diesen Lagerartikel"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Bestand"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Quellbau"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Bauauftrag für diesen Lagerartikel"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Verbraucht von"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Bauauftrag der diesen Lagerartikel verbrauchte"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Quelle Bestellung"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Bestellung für diesen Lagerartikel"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Ziel-Auftrag"
-#: stock/models.py:1162
+#: stock/models.py:1148
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:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Löschen wenn leer"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Diesen Lagerartikel löschen wenn der Bestand aufgebraucht ist"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Preis für eine Einheit bei Einkauf"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "In Teil umgewandelt"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Teil ist nicht verfolgbar"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Anzahl muss eine Ganzzahl sein"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Menge darf die verfügbare Lagermenge ({self.quantity}) nicht überschreiten"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Anzahl stimmt nicht mit den Seriennummern überein"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Testvorlage existiert nicht"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Artikel wurde einem Kundenauftrag zugewiesen"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Lagerartikel ist in anderem Element verbaut"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Lagerartikel enthält andere Artikel"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Artikel wurde einem Kunden zugewiesen"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Lagerartikel wird aktuell produziert"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Nachverfolgbare Lagerartikel können nicht zusammengeführt werden"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Artikel duplizeren"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Lagerartikel müssen auf dasselbe Teil verweisen"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Lagerartikel müssen auf dasselbe Lieferantenteil verweisen"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Status-Codes müssen zusammenpassen"
-#: stock/models.py:2366
+#: stock/models.py:2352
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:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Eintrags-Notizen"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Wert muss für diesen Test angegeben werden"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Anhang muss für diesen Test hochgeladen werden"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Testergebnis"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Test Ausgabe Wert"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Test Ergebnis Anhang"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Test Notizen"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Teststation"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "Der Bezeichner der Teststation, in der der Test durchgeführt wurde"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Gestartet"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Der Zeitstempel des Teststarts"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Fertiggestellt"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Der Zeitstempel der Test-Beendigung"
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Testvorlage für dieses Ergebnis"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "Vorlagen-ID oder Testname muss angegeben werden"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "Die Test-Endzeit kann nicht früher als die Startzeit des Tests sein"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Elternposition"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Packungsgröße beim Hinzufügen verwenden: Die definierte Menge ist die Anzahl der Pakete"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Seriennummern für neue Teile eingeben"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Anzahl darf nicht die verfügbare Menge überschreiten ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Ziel-Bestand"
@@ -8805,103 +8805,103 @@ msgstr "Lagerartikel auswählen, um den Status zu ändern"
msgid "No stock items selected"
msgstr "Keine Lagerartikel ausgewählt"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Unter-Lagerorte"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Übergeordneter Lagerort"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Teil muss verkaufbar sein"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Artikel ist einem Kundenauftrag zugeordnet"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Artikel ist einem Fertigungsauftrag zugeordnet"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Kunde zum Zuweisen von Lagerartikel"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Ausgewählte Firma ist kein Kunde"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Notizen zur Lagerzuordnung"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Eine Liste der Lagerbestände muss angegeben werden"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Notizen zur Lagerartikelzusammenführung"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Unterschiedliche Lieferanten erlauben"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Lieferanten erlauben"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Unterschiedliche Status erlauben"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Status-Codes erlauben"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Mindestens zwei Lagerartikel müssen angegeben werden"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Keine Änderung"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Primärschlüssel Lagerelement"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Bestandsbewegungsnotizen"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Nächste Seriennummer"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Vorherige Seriennummer"
@@ -9281,7 +9281,7 @@ msgstr ""
#: users/models.py:496
msgid "Internal"
-msgstr "Intern"
+msgstr "Interne"
#: users/models.py:498
msgid "Guest"
@@ -9313,7 +9313,7 @@ msgstr ""
#: users/models.py:528
msgid "Display Name"
-msgstr "Anzeigename"
+msgstr "Name anzeigen"
#: users/models.py:529
msgid "Chosen display name for the user"
@@ -9383,83 +9383,83 @@ msgstr "Aufträge"
msgid "Return Orders"
msgstr "Rücksendeaufträge"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Benutzername"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Vorname"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Vorname des Benutzers"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Nachname"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Nachname des Benutzers"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "E-Mailadresse des Benutzers"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Mitarbeiter"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Hat der Benutzer die Mitarbeiter Berechtigung"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Administrator"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Ist dieser Benutzer ein Administrator"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Ist dieses Benutzerkonto aktiv"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Passwort"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Ihr Konto wurde erstellt."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Bitte benutzen Sie die Passwort-zurücksetzen-Funktion, um sich anzumelden"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Willkommen bei InvenTree"
diff --git a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po
index 4504cc029b..e078a688e7 100644
--- a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Language: el_GR\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Το API endpoint δε βρέθηκε"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Πρέπει να παρέχεται λίστα Προϊόντων ή φίλτρων για μαζική ενέργεια"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Τα Προϊόντα πρέπει να δοθούν ως λίστα"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Η λίστα Προϊόντων που δόθηκε δεν είναι έγκυρη"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Τα φίλτρα πρέπει να δοθούν ως λεξικό"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Τα φίλτρα που δόθηκαν δεν είναι έγκυρα"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Το φίλτρο all πρέπει να χρησιμοποιείται μόνο με τιμή true"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Κανένα Aντικείμενο δεν ταιριάζει στα κριτήρια που δόθηκαν"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Δεν δόθηκαν δεδομένα"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr "Αυτό το πεδίο πρέπει να είναι μοναδικό."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Δεν έχετε δικαιώματα να το δείτε αυτό"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Δεν ήταν δυνατή η μετατροπή από {original} σε {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Μη έγκυρη ποσότητα"
@@ -112,13 +112,13 @@ msgstr "Εισάγετε ημερομηνία"
msgid "Invalid decimal value"
msgstr "Μη έγκυρη δεκαδική τιμή"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Σημειώσεις"
@@ -171,35 +171,35 @@ msgstr "Αφαιρέστε τα HTML tags από την τιμή που εισά
msgid "Data contains prohibited markdown content"
msgstr "Τα δεδομένα περιέχουν απαγορευμένο περιεχόμενο markdown"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Σφάλμα σύνδεσης"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Ο διακομιστής απάντησε με μη έγκυρο κωδικό κατάστασης"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Προέκυψε σφάλμα"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Ο διακομιστής ανταποκρίθηκε με \"Invalid Content-Length value\""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Η εικόνα είναι πολύ μεγάλη σε μέγεθος"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Η λήψη εικόνας ξεπέρασε το μέγιστο μέγεθος"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Ο διακομιστής επέστρεψε σφάλμα %1$d %2$s"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Το URL δεν είναι έγκυρο αρχείο εικόνας"
@@ -207,11 +207,11 @@ msgstr "Το URL δεν είναι έγκυρο αρχείο εικόνας"
msgid "Log in to the app"
msgstr "Σύνδεση στην εφαρμογή"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Email"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Πρέπει να ενεργοποιήσετε τον έλεγχο ταυτότητας δύο παραγόντων πριν κάνετε οτιδήποτε άλλο."
@@ -255,133 +255,133 @@ msgstr "Η αναφορά πρέπει να ταιριάζει με το απα
msgid "Reference number is too large"
msgstr "Ο αριθμός αναφοράς είναι πολύ μεγάλος"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Μη έγκυρη επιλογή"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Όνομα"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Περιγραφή"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Περιγραφή (προαιρετική)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Μονοπάτι"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Διπλότυπα ονόματα δεν μπορούν να υπάρχουν στον ίδιο γονέα"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Σημειώσεις Markdown (προαιρετικό)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Στοιχεία Barcode"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Δεδομένα barcode τρίτων"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash barcode"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Μοναδικό hash δεδομένων barcode"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Βρέθηκε υπάρχων barcode"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Αποτυχία εργασίας"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Η εργασία background worker '{f}' απέτυχε μετά από {n} προσπάθειες"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Σφάλμα διακομιστή"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Ένα σφάλμα έχει καταγραφεί από το διακομιστή."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Εικόνα"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Πρέπει να είναι αριθμός"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Νόμισμα"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Επιλέξτε νόμισμα από τις διαθέσιμες επιλογές"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Μη έγκυρη τιμή"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Απομακρυσμένες Εικόνες"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "Διεύθυνση URL του αρχείου απομακρυσμένης εικόνας"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Η λήψη εικόνων από απομακρυσμένο URL δεν είναι ενεργοποιημένη"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Αποτυχία λήψης εικόνας από απομακρυσμένο URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Μη έγκυρη φυσική μονάδα"
msgid "Not a valid currency code"
msgstr "Μη έγκυρος κωδικός συναλλάγματος"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Κατάσταση παραγγελίας"
@@ -562,21 +562,21 @@ msgstr "Κατάσταση παραγγελίας"
msgid "Parent Build"
msgstr "Γονική Κατασκευή"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Συμπερίληψη παραλλαγών"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Συμπερίληψη παραλλαγών"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Συμπερίληψη παραλλαγών"
msgid "Part"
msgstr "Εξάρτημα"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Κατηγορία"
@@ -666,80 +666,80 @@ msgstr "Μέγιστη ημερομηνία"
msgid "Exclude Tree"
msgstr "Εξαίρεση δέντρου"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Η έκδοση πρέπει να ακυρωθεί πριν διαγραφεί"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Αναλώσιμο"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Προαιρετικό"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Συναρμολόγηση"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Υπό παρακολούθηση"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Υπό δοκιμή"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Εκκρεμής παραγγελία"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Κατανεμημένο"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Καταναλωμένο"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Διαθέσιμο"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Σε παραγγελία"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Σειρά Κατασκευής"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Τοποθεσία"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Έξοδος"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "Φιλτράρισμα με βάση το ID του αποθέματος εξόδου. Χρησιμοποιήστε 'null' για να βρείτε μη εγκατεστημένα στοιχεία κατασκευής"
@@ -779,9 +779,9 @@ msgstr "Η ημερομηνία στόχος πρέπει να είναι μετ
msgid "Build Order Reference"
msgstr "Αναφορά Παραγγελίας Κατασκευής"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Κωδικός Παραγγελίας Πωλήσεων"
msgid "SalesOrder to which this build is allocated"
msgstr "SalesOrder στην οποία έχει διατεθεί αυτό το build"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Τοποθεσία Προέλευσης"
@@ -857,17 +857,17 @@ msgstr "Κατάσταση Κατασκευής"
msgid "Build status code"
msgstr "Κωδικός κατάστασης κατασκευής"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Κωδικός Παρτίδας"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Κωδικός παρτίδας για αυτήν την κατασκευή"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Ημερομηνία Δημιουργίας"
@@ -887,7 +887,7 @@ msgstr "Ημερομηνία ολοκλήρωσης στόχου"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Ημερομηνία ολοκλήρωσης της κατασκευής. Η κατασκευή θα καθυστερήσει μετά από αυτή την ημερομηνία."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Ημερομηνία ολοκλήρωσης"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Χρήστης που εξέδωσε αυτήν την παραγγελία κατασκευής"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Υπεύθυνος"
@@ -913,12 +913,12 @@ msgstr "Υπεύθυνος"
msgid "User or group responsible for this build order"
msgstr "Χρήστης ή ομάδα υπεύθυνη για αυτή την εντολή κατασκευής"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Εξωτερικοί σύνδεσμοι"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Σύνδεσμος προς εξωτερική διεύθυνση URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Προτεραιότητα αυτής της εντολής κατασκευής"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Κωδικός Έργου"
@@ -960,7 +960,7 @@ msgstr "Η παραγγελία κατασκευής {build} έχει ολοκλ
msgid "A build order has been completed"
msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Πρέπει να δοθούν σειριακοί αριθμοί για τα ανιχνεύσιμα Προϊόντα"
@@ -976,23 +976,23 @@ msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθ
msgid "Build output does not match Build Order"
msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Η ποσότητα δεν μπορεί να είναι μεγαλύτερη από την παραγόμενη ποσότητα"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "Η έξοδος κατασκευής δεν έχει περάσει όλες τις απαιτούμενες δοκιμές"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Το προϊόν κατασκευής {serial} δεν έχει περάσει όλες τις απαιτούμενες δοκιμές"
@@ -1001,18 +1001,18 @@ msgstr "Το προϊόν κατασκευής {serial} δεν έχει περά
msgid "Cannot partially complete a build output with allocated items"
msgstr "Δεν είναι δυνατή η μερική ολοκλήρωση προϊόντος κατασκευής με δεσμευμένα στοιχεία"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Γραμμή εντολής κατασκευής"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Αντικείμενο κατασκευής"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Αντικείμενο κατασκευής"
msgid "Quantity"
msgstr "Ποσότητα"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Απαιτούμενη ποσότητα για την εντολή κατασκευής"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Ποσότητα καταναλωμένου αποθέματος"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Το στοιχείο κατασκευής πρέπει να ορίζει μια έξοδο κατασκευής, καθώς το κύριο τμήμα επισημαίνεται ως ανιχνεύσιμο"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Το επιλεγμένο στοιχείο αποθέματος δεν ταιριάζει με τη γραμμή ΤΥ"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακό απόθεμα"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Η καταχωρημένη ποσότητα ({q}) δεν πρέπει να υπερβαίνει τη διαθέσιμη ποσότητα αποθέματος ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Στοιχείο αποθέματος είναι υπερ-κατανεμημένο"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακό απόθεμα"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Το επιλεγμένο στοιχείο αποθέματος δεν ταιριάζει με τη γραμμή ΤΥ"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Η δεσμευμένη ποσότητα υπερβαίνει τη διαθέσιμη ποσότητα αποθέματος"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Στοιχείο Αποθέματος"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Στοιχείο πηγαίου αποθέματος"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Ποσότητα αποθέματος για διάθεση για κατασκευή"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Εγκατάσταση σε"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Αποθήκη προορισμού"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Επίπεδο κατασκευής"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Όνομα Προϊόντος"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Ετικέτα κωδικού έργου"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Κατασκευή Εξόδου"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Το εξερχόμενο μέρος δεν ταιριάζει με το μέρος BuildOrder"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Αυτή η έξοδος κατασκευής δεν έχει εκχωρηθεί πλήρως"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Ακέραιη ποσότητα που απαιτείται για ανιχνεύσιμα μέρη"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Ακέραιη ποσότητα που απαιτείται, καθώς ο λογαριασμός των υλικών περιέχει ανιχνεύσιμα μέρη"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Σειριακοί αριθμοί"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Τοποθεσία αποθέματος για την έξοδο κατασκευής"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Αυτόματη Κατανομή Σειριακών Αριθμών"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Αυτόματη κατανομή των απαιτούμενων στοιχείων με τους αντίστοιχους σειριακούς αριθμούς"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Οι παρακάτω σειριακοί αριθμοί υπάρχουν ήδη ή δεν είναι έγκυροι"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Πρέπει να παρέχεται μια λίστα με τα αποτελέσματα κατασκευής"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Θέση αποθέματος για απορριφθείσες παραγωγές"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Απόρριψη Κατανομών"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Απορρίψτε τυχόν κατανομές αποθέματος για παραγωγές που έχουν απορριφθεί"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Αιτία απόρριψης προϊόντων κατασκευής"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Τοποθεσία για ολοκληρωμένα προϊόντα κατασκευής"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Αποδοχή Ελλιπούς Δέσμευσης"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Ολοκλήρωσε τα προϊόντα εάν το απόθεμα δεν έχει δεσμευτεί πλήρως"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Κατανάλωση δεσμευμένου αποθέματος"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Κατανάλωση οποιουδήποτε αποθέματος έχει ήδη δεσμευτεί για αυτή την κατασκευή"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Αφαίρεση Ατελείωτων Προϊόντων"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Διαγράψτε τυχόν προϊόντα κατασκευής που δεν έχουν ολοκληρωθεί"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Δεν επιτρέπεται"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Αποδοχή ως κατανάλωση για αυτή την παραγγελία κατασκευής"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Αποδέσμευση πριν από την ολοκλήρωση αυτής της παραγγελίας κατασκευής"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Υπερ-δεσμευμένο Απόθεμα"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Πώς θέλετε να χειριστείτε το επιπλέον απόθεμα που έχει δεσμευτεί στην παραγγελία κατασκευής"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Μερικά στοιχεία αποθέματος έχουν υπερ-δεσμευτεί"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Αποδοχή Μη Δεσμευμένων"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Αποδεχτείτε ότι αντικείμενα αποθέματος δεν έχουν δεσμευτεί πλήρως σε αυτή την παραγγελία κατασκευής"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Το απαιτούμενο απόθεμα δεν έχει δεσμευτεί πλήρως"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Αποδοχή Μη Ολοκληρωμένων"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Αποδεχτείτε ότι ο απαιτούμενος αριθμός προϊόντων κατασκευής δεν έχει ολοκληρωθεί"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Ο απαιτούμενος αριθμός προϊόντων δεν έχει ολοκληρωθεί"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Η εντολή κατασκευής έχει ανοιχτές θυγατρικές εντολές κατασκευής"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Η εντολή κατασκευής πρέπει να βρίσκεται σε κατάσταση παραγωγής"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Η παραγγελία κατασκευής έχει ελλιπή προϊόντα"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Γραμμή Κατασκευής"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Προϊόν Κατασκευής"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Το προϊόν κατασκευής πρέπει να δείχνει στην ίδια κατασκευή"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Αντικείμενο Γραμμής Κατασκευής"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part πρέπει να δείχνει στο ίδιο εξάρτημα με τη εντολή κατασκευής"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Το στοιχείο πρέπει να υπάρχει στο απόθεμα"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Η διαθέσιμη ποσότητα ({q}) έχει ξεπεραστεί"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Πρέπει να καθοριστεί έξοδος κατασκευής για την κατανομή ανιχνεύσιμων Προϊόντων"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Δεν μπορεί να καθοριστεί έξοδος κατασκευής για την κατανομή μη ανιχνεύσιμων Προϊόντων"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Πρέπει να δοθούν στοιχεία κατανομής"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Τοποθεσία αποθέματος από την οποία θα ληφθούν τα Προϊόντα (αφήστε κενό για λήψη από οποιαδήποτε τοποθεσία)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Εξαίρεση τοποθεσίας"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Εξαιρέστε στοιχεία αποθέματος από αυτή την επιλεγμένη τοποθεσία"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Εναλλάξιμο απόθεμα"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Στοιχεία αποθέματος σε πολλές τοποθεσίες μπορούν να χρησιμοποιηθούν εναλλάξ"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Εναλλακτικό απόθεμα"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Να επιτρέπεται η κατανομή εναλλακτικών Προϊόντων"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Προαιρετικά στοιχεία"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Κατανομή προαιρετικών στοιχείων BOM στην εντολή κατασκευής"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Αποτυχία εκκίνησης εργασίας αυτόματης κατανομής"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Αναφορά BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID Προϊόντος BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Όνομα Προϊόντος BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Κατασκευή"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Aντικειμένου προμηθευτή"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Δεσμευμένη ποσότητα"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Αναφορά κατασκευής"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Όνομα κατηγορίας Προϊόντος"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Ανιχνεύσιμο"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Κληρονομημένο"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Να επιτρέπονται παραλλαγές"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Στοιχείο BOM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Σε παραγωγή"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Προγραμματισμένο για κατασκευή"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Εξωτερικό απόθεμα"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Διαθέσιμο απόθεμα"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Διαθέσιμο εναλλακτικό απόθεμα"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Διαθέσιμο απόθεμα παραλλαγών"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "Η καταναλωμένη ποσότητα υπερβαίνει τη δεσμευμένη ποσότητα"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Προαιρετικές σημειώσεις για την κατανάλωση αποθέματος"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "Το στοιχείο κατασκευής πρέπει να αντιστοιχεί στη σωστή εντολή κατασκευής"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Διπλή κατανομή στοιχείου κατασκευής"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "Η γραμμή κατασκευής πρέπει να αντιστοιχεί στη σωστή εντολή κατασκευής"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Διπλή κατανομή γραμμής κατασκευής"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Πρέπει να δοθεί τουλάχιστον ένα στοιχείο ή μία γραμμή"
@@ -1498,19 +1490,19 @@ msgstr "Εκπρόθεσμη εντολή κατασκευής"
msgid "Build order {bo} is now overdue"
msgstr "Η εντολή κατασκευής {bo} είναι πλέον εκπρόθεσμη"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Είναι σύνδεσμος"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Είναι αρχείο"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Ο χρήστης δεν έχει δικαίωμα να διαγράψει αυτά τα συνημμένα"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Ο χρήστης δεν έχει δικαίωμα να διαγράψει αυτό το συνημμένο"
@@ -1530,7 +1522,11 @@ msgstr "Δεν δόθηκαν έγκυροι κωδικοί συναλλάγμα
msgid "No plugin"
msgstr "Χωρίς πρόσθετο"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Ετικέτα κωδικού έργου"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Ενημερώθηκε"
@@ -1558,7 +1554,7 @@ msgstr "Περιγραφή έργου"
msgid "User or group responsible for this project"
msgstr "Χρήστης ή ομάδα υπεύθυνη για αυτό το έργο"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Κλειδί ρυθμίσεων"
@@ -1590,550 +1586,550 @@ msgstr "Η τιμή δεν περνά τους ελέγχους εγκυρότη
msgid "Key string must be unique"
msgstr "Η συμβολοσειρά κλειδιού πρέπει να είναι μοναδική"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Χρήστης"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Ποσότητα κλιμακωτής τιμής"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Τιμή"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Τιμή μονάδας στη συγκεκριμένη ποσότητα"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Endpoint"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Το endpoint στο οποίο λαμβάνεται αυτό το webhook"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Όνομα για αυτό το webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Ενεργό"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Είναι αυτό το webhook ενεργό"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token πρόσβασης"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Μυστικό"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Κοινόχρηστο μυστικό για HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID μηνύματος"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Μοναδικό αναγνωριστικό για αυτό το μήνυμα"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Host"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Host από τον οποίο παραλήφθηκε αυτό το μήνυμα"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Κεφαλίδα"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Κεφαλίδα αυτού του μηνύματος"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Κείμενο"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Κείμενο αυτού του μηνύματος"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Endpoint στο οποίο παραλήφθηκε αυτό το μήνυμα"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Επεξεργάστηκε"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Ολοκληρώθηκε η εργασία σε αυτό το μήνυμα;"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "ID"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Τίτλος"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Σύνδεσμος"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Δημοσιεύθηκε"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Συντάκτης"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Περίληψη"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Αναγνωσμένο"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Διαβάστηκε αυτό το νέο;"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Αρχείο εικόνας"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Τύπος μοντέλου-στόχου για αυτή την εικόνα"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "ID μοντέλου-στόχου για αυτή την εικόνα"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Προσαρμοσμένη μονάδα"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Το σύμβολο μονάδας πρέπει να είναι μοναδικό"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Το όνομα μονάδας πρέπει να είναι έγκυρο αναγνωριστικό"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Όνομα μονάδας"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Σύμβολο"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Προαιρετικό σύμβολο μονάδας"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Ορισμός"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Ορισμός μονάδας"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Συνημμένο"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Το αρχείο λείπει"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Λείπει ο εξωτερικός σύνδεσμος"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Τύπος μοντέλου"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Τύπος μοντέλου-στόχου για την εικόνα"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Επιλέξτε αρχείο για επισύναψη"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Σχόλιο"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Σχόλιο συνημμένου"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Ημερομηνία μεταφόρτωσης"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Ημερομηνία μεταφόρτωσης του αρχείου"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Μέγεθος αρχείου"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Μέγεθος αρχείου σε bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Μη έγκυρος τύπος μοντέλου που ορίστηκε για το συνημμένο"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Προσαρμοσμένη κατάσταση"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Προσαρμοσμένες καταστάσεις"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Σετ κατάστασης αναφοράς"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Σετ καταστάσεων που επεκτείνεται με αυτή την προσαρμοσμένη κατάσταση"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Λογικό κλειδί"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Λογικό κλειδί κατάστασης που είναι ισοδύναμο με αυτή την προσαρμοσμένη κατάσταση στη λογική της εφαρμογής"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Τιμή"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Αριθμητική τιμή που θα αποθηκευτεί στη βάση δεδομένων των μοντέλων"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Όνομα της κατάστασης"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Ετικέτα"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Ετικέτα που θα εμφανίζεται στο frontend"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Χρώμα"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Χρώμα που θα εμφανίζεται στο frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Μοντέλο"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Μοντέλο με το οποίο συσχετίζεται αυτή η κατάσταση"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Πρέπει να επιλεγεί μοντέλο"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Πρέπει να επιλεγεί κλειδί"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Πρέπει να επιλεγεί λογικό κλειδί"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Το κλειδί πρέπει να είναι διαφορετικό από το λογικό κλειδί"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Πρέπει να δοθεί έγκυρη κλάση κατάστασης αναφοράς"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Το κλειδί πρέπει να είναι διαφορετικό από τα λογικά κλειδιά της κατάστασης αναφοράς"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "Το λογικό κλειδί πρέπει να ανήκει στα λογικά κλειδιά της κατάστασης αναφοράς"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Το όνομα πρέπει να είναι διαφορετικό από τα ονόματα της κατάστασης αναφοράς"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Λίστα επιλογών"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Λίστες επιλογών"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Όνομα της λίστας επιλογών"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Περιγραφή της λίστας επιλογών"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Κλειδωμένο"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Είναι αυτή η λίστα επιλογών κλειδωμένη;"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Μπορεί να χρησιμοποιηθεί αυτή η λίστα επιλογών;"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Πρόσθετο πηγής"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Πρόσθετο που παρέχει τη λίστα επιλογών"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Συμβολοσειρά πηγής"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Προαιρετική συμβολοσειρά που ταυτοποιεί την πηγή που χρησιμοποιείται για αυτή τη λίστα"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Προεπιλεγμένη καταχώρηση"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Προεπιλεγμένη καταχώρηση για αυτή τη λίστα επιλογών"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Δημιουργήθηκε"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Ημερομηνία και ώρα δημιουργίας της λίστας επιλογών"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Τελευταία ενημέρωση"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Ημερομηνία και ώρα της τελευταίας ενημέρωσης της λίστας επιλογών"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Καταχώρηση λίστας επιλογών"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Καταχωρήσεις λίστας επιλογών"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Λίστα επιλογών στην οποία ανήκει αυτή η καταχώρηση"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Τιμή της καταχώρησης λίστας επιλογών"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Ετικέτα για την καταχώρηση λίστας επιλογών"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Περιγραφή της καταχώρησης λίστας επιλογών"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Είναι ενεργή αυτή η καταχώρηση λίστας επιλογών;"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Πρότυπο παραμέτρου"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Οι παράμετροι τύπου checkbox δεν μπορούν να έχουν μονάδες"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Οι παράμετροι τύπου checkbox δεν μπορούν να έχουν επιλογές"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Οι επιλογές πρέπει να είναι μοναδικές"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Το όνομα προτύπου παραμέτρου πρέπει να είναι μοναδικό"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Όνομα παραμέτρου"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Μονάδες"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Φυσικές μονάδες για αυτή την παράμετρο"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Περιγραφή παραμέτρου"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Checkbox"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Είναι αυτή η παράμετρος τύπου checkbox;"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Επιλογές"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Έγκυρες επιλογές για αυτή την παράμετρο (διαχωρισμένες με κόμμα)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Λίστα επιλογών για αυτή την παράμετρο"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Ενεργό"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Μη έγκυρη επιλογή για την τιμή παραμέτρου"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Πρότυπο"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Δεδομένα"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Τιμή παραμέτρου"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Τιμή παραμέτρου"
msgid "Note"
msgstr "Σημείωση"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Προαιρετικό πεδίο σημείωσης"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Σάρωση barcode"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Δεδομένα barcode"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Χρήστης που σάρωσε το barcode"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Χρονική σήμανση"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Ημερομηνία και ώρα της σάρωσης barcode"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "URL endpoint που επεξεργάστηκε το barcode"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Πλαίσιο"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Δεδομένα πλαισίου για τη σάρωση barcode"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Απόκριση"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Δεδομένα απόκρισης από τη σάρωση barcode"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Αποτέλεσμα"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Ήταν επιτυχημένη η σάρωση barcode;"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Παρουσιάστηκε σφάλμα"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: Η διαγραφή του log email προστατεύεται. Ορίστε το INVENTREE_PROTECT_EMAIL_LOG σε False για να επιτραπεί η διαγραφή."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "Μήνυμα email"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "Μηνύματα email"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Ανακοινώθηκε"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Εστάλη"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Απέτυχε"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Παραδόθηκε"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Επιβεβαιώθηκε"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Εισερχόμενο"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Εξερχόμενο"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Χωρίς απάντηση"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Παρακολούθηση παράδοσης"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Παρακολούθηση ανάγνωσης"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Παρακολούθηση κλικ"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "Global ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Αναγνωριστικό για αυτό το μήνυμα (ενδέχεται να παρέχεται από εξωτερικό σύστημα)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "ID νήματος"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Αναγνωριστικό για αυτό το νήμα μηνυμάτων (ενδέχεται να παρέχεται από εξωτερικό σύστημα)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Νήμα"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Συνδεδεμένο νήμα για αυτό το μήνυμα"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Νήμα email"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Νήματα email"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Κλειδί"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Μοναδικό κλειδί για αυτό το νήμα (χρησιμοποιείται για την ταυτοποίησή του)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Μοναδικό αναγνωριστικό για αυτό το νήμα"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Ξεκίνησε εσωτερικά"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Ξεκίνησε αυτό το νήμα εσωτερικά;"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Ημερομηνία και ώρα δημιουργίας του νήματος"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Ημερομηνία και ώρα της τελευταίας ενημέρωσης του νήματος"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} ακυρώθηκε"
msgid "A order that is assigned to you was canceled"
msgstr "Μια παραγγελία που σας είχε ανατεθεί ακυρώθηκε"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Είδη που παραλήφθηκαν"
@@ -2351,93 +2347,101 @@ msgstr "Είδη έχουν παραληφθεί έναντι εντολής α
msgid "Items have been received against a return order"
msgstr "Είδη έχουν παραληφθεί έναντι εντολής επιστροφής"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Δείχνει αν η ρύθμιση παρακάμπτεται από μεταβλητή περιβάλλοντος"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Παράκαμψη"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Εκτελείται"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Εργασίες σε αναμονή"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Προγραμματισμένες εργασίες"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Αποτυχημένες εργασίες"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID εργασίας"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Μοναδικό ID εργασίας"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Κλείδωμα"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Χρόνος κλειδώματος"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Όνομα εργασίας"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Συνάρτηση"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Όνομα συνάρτησης"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Ορίσματα"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Ορίσματα εργασίας"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Ορίσματα λέξεων-κλειδιών"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Ορίσματα λέξεων-κλειδιών της εργασίας"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Όνομα αρχείου"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Τύπος μοντέλου"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Ο χρήστης δεν έχει δικαίωμα να δημιουργήσει ή να επεξεργαστεί συνημμένα για αυτό το μοντέλο"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Η λίστα επιλογών είναι κλειδωμένη"
@@ -2445,1128 +2449,1132 @@ msgstr "Η λίστα επιλογών είναι κλειδωμένη"
msgid "No group"
msgstr "Χωρίς ομάδα"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Το URL του site είναι κλειδωμένο από τη ρύθμιση"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Απαιτείται επανεκκίνηση"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Μια ρύθμιση έχει αλλάξει και απαιτείται επανεκκίνηση του διακομιστή"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Εκκρεμείς migrations"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Αριθμός εκκρεμών μεταναστεύσεων βάσης δεδομένων"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Ενεργοί κωδικοί προειδοποίησης"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Λεξικό με τους ενεργούς κωδικούς προειδοποίησης"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "ID instance"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Μοναδικό αναγνωριστικό για αυτό το instance του InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Δημοσίευση ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Δημοσίευση του instance ID του διακομιστή στις πληροφορίες κατάστασης διακομιστή (χωρίς έλεγχο ταυτότητας)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Όνομα instance διακομιστή"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Περιγραφή κειμένου για το instance του διακομιστή"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Χρήση ονόματος instance"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Χρήση του ονόματος instance στη γραμμή τίτλου"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Περιορισμός εμφάνισης `about`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Εμφάνιση της λειτουργίας `about` μόνο σε superusers"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Επωνυμία εταιρείας"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Εσωτερική επωνυμία εταιρείας"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Βασικό URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Βασικό URL για το instance του διακομιστή"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Προεπιλεγμένο νόμισμα"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Επιλέξτε βασικό νόμισμα για τους υπολογισμούς τιμών"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Υποστηριζόμενα νομίσματα"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Λίστα υποστηριζόμενων κωδικών νομισμάτων"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Διάστημα ενημέρωσης νομισμάτων"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Κάθε πότε θα ενημερώνονται οι συναλλαγματικές ισοτιμίες (0 για απενεργοποίηση)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "ημέρες"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Πρόσθετο ενημέρωσης νομισμάτων"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Πρόσθετο ενημέρωσης νομισμάτων που θα χρησιμοποιηθεί"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Λήψη από URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Να επιτρέπεται η λήψη απομακρυσμένων εικόνων και αρχείων από εξωτερικό URL"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Όριο μεγέθους λήψης"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Μέγιστο επιτρεπόμενο μέγεθος λήψης για απομακρυσμένη εικόνα"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-agent που χρησιμοποιείται για λήψη από URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Να επιτρέπεται η αντικατάσταση του user-agent που χρησιμοποιείται για λήψη εικόνων και αρχείων από εξωτερικό URL (αφήστε κενό για το προεπιλεγμένο)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Αυστηρή επικύρωση URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Να απαιτείται ορισμός σχήματος κατά την επικύρωση URL"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Διάστημα ελέγχου ενημερώσεων"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Κάθε πότε θα γίνεται έλεγχος για ενημερώσεις (0 για απενεργοποίηση)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Αυτόματο αντίγραφο ασφαλείας"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Ενεργοποίηση αυτόματου backup της βάσης δεδομένων και των media αρχείων"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Διάστημα αυτόματου backup"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Ορίστε τον αριθμό ημερών μεταξύ των αυτόματων backup"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Διάστημα διαγραφής εργασιών"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Τα αποτελέσματα εργασιών παρασκηνίου θα διαγράφονται μετά από τον καθορισμένο αριθμό ημερών"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Διάστημα διαγραφής log σφαλμάτων"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Τα log σφαλμάτων θα διαγράφονται μετά από τον καθορισμένο αριθμό ημερών"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Διάστημα διαγραφής ειδοποιήσεων"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Οι ειδοποιήσεις χρηστών θα διαγράφονται μετά από τον καθορισμένο αριθμό ημερών"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Διάστημα διαγραφής email"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "Τα μηνύματα email θα διαγράφονται μετά από τον καθορισμένο αριθμό ημερών"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Προστασία log email"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Αποτροπή διαγραφής εγγραφών log email"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Υποστήριξη barcode"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Ενεργοποίηση υποστήριξης σαρωτή barcode στο web interface"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Αποθήκευση αποτελεσμάτων barcode"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Αποθήκευση των αποτελεσμάτων σάρωσης barcode στη βάση δεδομένων"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Μέγιστος αριθμός σαρώσεων barcode"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Μέγιστος αριθμός αποτελεσμάτων σάρωσης barcode που θα αποθηκεύονται"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Καθυστέρηση εισόδου barcode"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Χρόνος καθυστέρησης επεξεργασίας εισόδου barcode"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Υποστήριξη barcode μέσω webcam"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Να επιτρέπεται σάρωση barcode μέσω webcam στο πρόγραμμα περιήγησης"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Εμφάνιση δεδομένων barcode"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Εμφάνιση των δεδομένων barcode στο πρόγραμμα περιήγησης ως κείμενο"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Πρόσθετο δημιουργίας barcode"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Πρόσθετο που θα χρησιμοποιείται για εσωτερική δημιουργία δεδομένων barcode"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Εκδόσεις Προϊόντων"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Ενεργοποίηση πεδίου έκδοσης για Aντικειμένου"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Μόνο εκδόσεις συναρμολογήσεων"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Να επιτρέπονται εκδόσεις μόνο για Προϊόντα συναρμολόγησης"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Να επιτρέπεται διαγραφή από συναρμολόγηση"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Να επιτρέπεται η διαγραφή Προϊόντων που χρησιμοποιούνται σε συναρμολόγηση"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Πρότυπο regular expression για αντιστοίχιση IPN Προϊόντος"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Να επιτρέπονται διπλά IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Να επιτρέπεται σε πολλαπλά Προϊόντα να μοιράζονται το ίδιο IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Να επιτρέπεται η επεξεργασία IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Να επιτρέπεται η αλλαγή της τιμής IPN κατά την επεξεργασία ενός Προϊόντος"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Αντιγραφή δεδομένων BOM Προϊόντος"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Αντιγραφή δεδομένων BOM από προεπιλογή κατά τον διπλασιασμό ενός Προϊόντος"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Αντιγραφή δεδομένων παραμέτρων Προϊόντος"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Αντιγραφή δεδομένων παραμέτρων από προεπιλογή κατά τον διπλασιασμό ενός Προϊόντος"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Αντιγραφή δεδομένων δοκιμών Προϊόντος"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Αντιγραφή δεδομένων δοκιμών από προεπιλογή κατά τον διπλασιασμό ενός Προϊόντος"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Αντιγραφή προτύπων παραμέτρων κατηγορίας"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Αντιγραφή προτύπων παραμέτρων κατηγορίας κατά τη δημιουργία Προϊόντος"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Τα Προϊόντα είναι πρότυπα από προεπιλογή"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Τα Προϊόντα μπορούν να συναρμολογούνται από άλλα συστατικά από προεπιλογή"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Συστατικό"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Τα Προϊόντα μπορούν να χρησιμοποιούνται ως υποσυστατικά από προεπιλογή"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Αγοράσιμο"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Τα Προϊόντα είναι αγοράσιμα από προεπιλογή"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Πωλήσιμο"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Τα Προϊόντα είναι πωλήσιμα από προεπιλογή"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Τα Προϊόντα είναι ανιχνεύσιμα από προεπιλογή"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Εικονικό"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Τα Προϊόντα είναι εικονικά από προεπιλογή"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Εμφάνιση σχετικών Προϊόντων"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Εμφάνιση σχετικών Προϊόντων για ένα Aντικειμένου"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Αρχικά δεδομένα αποθέματος"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Να επιτρέπεται η δημιουργία αρχικού αποθέματος κατά την προσθήκη νέου Προϊόντος"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Αρχικά δεδομένα προμηθευτή"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Να επιτρέπεται η δημιουργία αρχικών δεδομένων προμηθευτή κατά την προσθήκη νέου Προϊόντος"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Μορφή εμφάνισης ονόματος Προϊόντος"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Μορφή με την οποία εμφανίζεται το όνομα του Προϊόντος"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Προεπιλεγμένο εικονίδιο κατηγορίας Προϊόντος"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Προεπιλεγμένο εικονίδιο κατηγορίας Προϊόντος (κενό σημαίνει χωρίς εικονίδιο)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Ελάχιστα δεκαδικά ψηφία τιμολόγησης"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Ελάχιστος αριθμός δεκαδικών ψηφίων που θα εμφανίζονται στα δεδομένα τιμολόγησης"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Μέγιστα δεκαδικά ψηφία τιμολόγησης"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Μέγιστος αριθμός δεκαδικών ψηφίων που θα εμφανίζονται στα δεδομένα τιμολόγησης"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Χρήση τιμών προμηθευτή"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Συμπερίληψη κλιμακωτών τιμών προμηθευτή στους συνολικούς υπολογισμούς τιμών"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Υπέρβαση μέσω ιστορικού αγορών"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Οι ιστορικές τιμές εντολών αγοράς υπερισχύουν των κλιμακωτών τιμών προμηθευτή"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Χρήση τιμολόγησης στοιχείου αποθέματος"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Χρήση τιμών από χειροκίνητα καταχωρημένα δεδομένα αποθέματος για τους υπολογισμούς τιμών"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Ηλικία τιμολόγησης στοιχείου αποθέματος"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Εξαίρεση στοιχείων αποθέματος παλαιότερων από αυτόν τον αριθμό ημερών από τους υπολογισμούς τιμών"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Χρήση τιμολόγησης παραλλαγών"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Συμπερίληψη τιμών παραλλαγών στους συνολικούς υπολογισμούς τιμών"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Μόνο ενεργές παραλλαγές"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Χρήση μόνο ενεργών Προϊόντων παραλλαγών για τον υπολογισμό τιμών παραλλαγών"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Αυτόματη ενημέρωση τιμών"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Αυτόματη ενημέρωση τιμών Προϊόντων όταν αλλάζουν τα εσωτερικά δεδομένα"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Διάστημα επαναυπολογισμού τιμών"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Αριθμός ημερών πριν ενημερωθούν αυτόματα οι τιμές των Προϊόντων"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Εσωτερικές τιμές"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Ενεργοποίηση εσωτερικών τιμών για Προϊόντα"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Υπέρβαση μέσω εσωτερικής τιμής"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Όταν υπάρχουν, οι εσωτερικές τιμές υπερισχύουν των υπολογισμών εύρους τιμών"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Ενεργοποίηση εκτύπωσης ετικετών"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Ενεργοποίηση εκτύπωσης ετικετών από το web interface"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI εικόνας ετικέτας"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Ανάλυση DPI κατά τη δημιουργία αρχείων εικόνας για πρόσθετα εκτύπωσης ετικετών"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Ενεργοποίηση αναφορών"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Ενεργοποίηση δημιουργίας αναφορών"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Λειτουργία αποσφαλμάτωσης"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Δημιουργία αναφορών σε λειτουργία αποσφαλμάτωσης (έξοδος HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Καταγραφή σφαλμάτων αναφορών"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Καταγραφή σφαλμάτων που προκύπτουν κατά τη δημιουργία αναφορών"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Μέγεθος σελίδας"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Προεπιλεγμένο μέγεθος σελίδας για PDF αναφορές"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Επιβολή μονάδων παραμέτρων"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Αν δοθούν μονάδες, οι τιμές των παραμέτρων πρέπει να αντιστοιχούν στις καθορισμένες μονάδες"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Καθολικά μοναδικοί σειριακοί αριθμοί"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Οι σειριακοί αριθμοί των στοιχείων αποθέματος πρέπει να είναι καθολικά μοναδικοί"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Διαγραφή εξαντλημένου αποθέματος"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Καθορίζει την προεπιλεγμένη συμπεριφορά όταν ένα στοιχείο αποθέματος εξαντλείται"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Πρότυπο κωδικού παρτίδας"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Πρότυπο για τη δημιουργία προεπιλεγμένων κωδικών παρτίδας για στοιχεία αποθέματος"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Λήξη αποθέματος"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Ενεργοποίηση λειτουργίας λήξης αποθέματος"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Πώληση ληγμένου αποθέματος"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Να επιτρέπεται η πώληση ληγμένου αποθέματος"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Χρόνος απαρχαίωσης αποθέματος"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Αριθμός ημερών που τα στοιχεία αποθέματος θεωρούνται παλαιωμένα πριν λήξουν"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Κατασκευή με ληγμένο απόθεμα"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Να επιτρέπεται η κατασκευή με ληγμένο απόθεμα"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Έλεγχος ιδιοκτησίας αποθέματος"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Ενεργοποίηση ελέγχου ιδιοκτησίας σε τοποθεσίες και στοιχεία αποθέματος"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Προεπιλεγμένο εικονίδιο τοποθεσίας αποθέματος"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Προεπιλεγμένο εικονίδιο τοποθεσίας αποθέματος (κενό σημαίνει χωρίς εικονίδιο)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Εμφάνιση εγκατεστημένων στοιχείων αποθέματος"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Εμφάνιση εγκατεστημένων στοιχείων αποθέματος στους πίνακες αποθέματος"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Έλεγχος BOM κατά την εγκατάσταση στοιχείων"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Τα εγκατεστημένα στοιχεία αποθέματος πρέπει να υπάρχουν στο BOM του γονικού Προϊόντος"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Να επιτρέπεται μεταφορά εκτός αποθέματος"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Να επιτρέπεται η μεταφορά στοιχείων αποθέματος που δεν είναι διαθέσιμα μεταξύ τοποθεσιών αποθέματος"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Πρότυπο αναφοράς εντολής κατασκευής"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Απαιτούμενο πρότυπο για τη δημιουργία του πεδίου αναφοράς εντολής κατασκευής"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Απαίτηση υπεύθυνου κατόχου"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Πρέπει να οριστεί υπεύθυνος ιδιοκτήτης για κάθε παραγγελία"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Απαίτηση ενεργού προϊόντος"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Αποτροπή δημιουργίας εντολής παραγωγής για ανενεργά προϊόντα"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Απαίτηση κλειδωμένου προϊόντος"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Αποτροπή δημιουργίας εντολής παραγωγής για ξεκλείδωτα προϊόντα"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Απαίτηση έγκυρης BOM"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Αποτροπή δημιουργίας εντολής παραγωγής αν δεν έχει επικυρωθεί η BOM"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Απαίτηση κλειστών θυγατρικών εντολών"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Αποτροπή ολοκλήρωσης εντολής παραγωγής μέχρι να κλείσουν όλες οι θυγατρικές εντολές"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Εξωτερικές εντολές παραγωγής"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Ενεργοποίηση λειτουργίας εξωτερικών εντολών παραγωγής"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Φραγή έως ότου περάσουν τα τεστ"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Αποτροπή ολοκλήρωσης εξόδων παραγωγής μέχρι να περάσουν όλα τα απαιτούμενα τεστ"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Ενεργοποίηση εντολών επιστροφής"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Ενεργοποίηση λειτουργίας εντολών επιστροφής στη διεπαφή χρήστη"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Μοτίβο αναφοράς εντολής επιστροφής"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Απαιτούμενο μοτίβο για τη δημιουργία του πεδίου αναφοράς εντολής επιστροφής"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Επεξεργασία ολοκληρωμένων εντολών επιστροφής"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Επιτρέπει την επεξεργασία εντολών επιστροφής μετά την ολοκλήρωσή τους"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Μοτίβο αναφοράς εντολής πώλησης"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Απαιτούμενο μοτίβο για τη δημιουργία του πεδίου αναφοράς εντολής πώλησης"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Προεπιλεγμένη αποστολή εντολής πώλησης"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Ενεργοποίηση δημιουργίας προεπιλεγμένης αποστολής με τις εντολές πώλησης"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Επεξεργασία ολοκληρωμένων εντολών πώλησης"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Επιτρέπει την επεξεργασία εντολών πώλησης μετά την αποστολή ή ολοκλήρωσή τους"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr "Η αποστολή απαιτεί έλεγχο"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr "Αποτροπή ολοκλήρωσης αποστολών μέχρι να ελεγχθούν τα είδη"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Σήμανση αποσταλμένων εντολών ως ολοκληρωμένων"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Οι εντολές πώλησης που επισημαίνονται ως αποσταλμένες ολοκληρώνονται αυτόματα, παρακάμπτοντας την κατάσταση «απεσταλμένο»"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Μοτίβο αναφοράς εντολής αγοράς"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Απαιτούμενο μοτίβο για τη δημιουργία του πεδίου αναφοράς εντολής αγοράς"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Επεξεργασία ολοκληρωμένων εντολών αγοράς"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Επιτρέπει την επεξεργασία εντολών αγοράς μετά την αποστολή ή ολοκλήρωσή τους"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Μετατροπή νομίσματος"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Μετατροπή της αξίας είδους στο βασικό νόμισμα κατά την παραλαβή αποθέματος"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Αυτόματη ολοκλήρωση εντολών αγοράς"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Αυτόματη σήμανση εντολών αγοράς ως ολοκληρωμένων όταν έχουν παραληφθεί όλα τα είδη"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Ενεργοποίηση υπενθύμισης κωδικού"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Ενεργοποίηση λειτουργίας υπενθύμισης κωδικού στις σελίδες σύνδεσης"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Ενεργοποίηση εγγραφής"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Ενεργοποίηση αυτοεγγραφής χρηστών στις σελίδες σύνδεσης"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Ενεργοποίηση SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Ενεργοποίηση SSO στις σελίδες σύνδεσης"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Ενεργοποίηση εγγραφής μέσω SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Ενεργοποίηση αυτοεγγραφής μέσω SSO στις σελίδες σύνδεσης"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Ενεργοποίηση συγχρονισμού ομάδων SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Ενεργοποίηση συγχρονισμού ομάδων InvenTree με ομάδες από τον IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Κλειδί ομάδας SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Το όνομα του πεδίου ομάδων που παρέχεται από τον IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Χάρτης ομάδων SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Χαρτογράφηση ομάδων SSO σε τοπικές ομάδες InvenTree. Αν η ομάδα δεν υπάρχει, θα δημιουργηθεί."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Αφαίρεση ομάδων εκτός SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Αν πρέπει να αφαιρούνται ομάδες από τον χρήστη όταν δεν παρέχονται από τον IdP. Η απενεργοποίηση μπορεί να προκαλέσει προβλήματα ασφαλείας"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Απαίτηση email"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Απαίτηση συμπλήρωσης email κατά την εγγραφή"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Αυτόματη συμπλήρωση χρηστών SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Αυτόματη συμπλήρωση στοιχείων χρήστη από τα δεδομένα SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Email δύο φορές"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Κατά την εγγραφή ζητείται το email δύο φορές"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Κωδικός δύο φορές"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Κατά την εγγραφή ζητείται ο κωδικός δύο φορές"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Επιτρεπόμενοι τομείς"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Περιορισμός εγγραφής σε συγκεκριμένους τομείς (χωρισμένοι με κόμμα, ξεκινούν με @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Ομάδα κατά την εγγραφή"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Ομάδα στην οποία εκχωρούνται οι νέοι χρήστες κατά την εγγραφή. Με ενεργό SSO sync, χρησιμοποιείται μόνο όταν δεν μπορεί να δοθεί ομάδα από τον IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Επιβολή MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Οι χρήστες πρέπει να χρησιμοποιούν πολυπαραγοντική ασφάλεια"
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Έλεγχος plugins κατά την εκκίνηση"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Έλεγχος ότι όλα τα plugins είναι εγκατεστημένα κατά την εκκίνηση – χρήσιμο σε container περιβάλλοντα"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Έλεγχος για ενημερώσεις plugin"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Ενεργοποίηση περιοδικών ελέγχων για ενημερώσεις εγκατεστημένων plugins"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Ενεργοποίηση URL integration"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Ενεργοποίηση προσθήκης URL routes από plugins"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Ενεργοποίηση ενσωμάτωσης στην πλοήγηση"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Ενεργοποίηση ενσωμάτωσης των plugins στην πλοήγηση"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Ενεργοποίηση ενσωμάτωσης εφαρμογών"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Ενεργοποίηση προσθήκης εφαρμογών από plugins"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Ενεργοποίηση ενσωμάτωσης χρονοπρογραμματισμού"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Ενεργοποίηση εκτέλεσης χρονοπρογραμματισμένων εργασιών από plugins"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Ενεργοποίηση ενσωμάτωσης γεγονότων"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Ενεργοποίηση απόκρισης plugins σε εσωτερικά γεγονότα"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Ενεργοποίηση ενσωμάτωσης διεπαφής"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Ενεργοποίηση ενσωμάτωσης plugins στη διεπαφή χρήστη"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Ενεργοποίηση ενσωμάτωσης email"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Ενεργοποίηση επεξεργασίας εισερχόμενων/εξερχόμενων emails από plugins"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Ενεργοποίηση κωδικών έργου"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Ενεργοποίηση κωδικών έργου για την παρακολούθηση projects"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Ενεργοποίηση ιστορικού αποθέματος"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Ενεργοποίηση καταγραφής ιστορικών επιπέδων και αξιών αποθέματος"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Εξαίρεση εξωτερικών τοποθεσιών"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Εξαίρεση ειδών αποθέματος σε εξωτερικές τοποθεσίες από τους υπολογισμούς ιστορικού"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Περίοδος αυτόματης απογραφής"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Αριθμός ημερών μεταξύ αυτόματων καταγραφών ιστορικού αποθέματος"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Διαγραφή παλαιών εγγραφών ιστορικού αποθέματος"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Διαγραφή εγγραφών ιστορικού αποθέματος παλαιότερων από τον καθορισμένο αριθμό ημερών"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Διάστημα διαγραφής ιστορικού αποθέματος"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Οι εγγραφές ιστορικού αποθέματος θα διαγράφονται μετά από τον καθορισμένο αριθμό ημερών"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Εμφάνιση πλήρους ονόματος χρηστών"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Εμφάνιση του πλήρους ονόματος των χρηστών αντί για το όνομα χρήστη"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Εμφάνιση προφίλ χρηστών"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Εμφάνιση προφίλ χρηστών στη σελίδα προφίλ τους"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Ενεργοποίηση δεδομένων σταθμού δοκιμών"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Ενεργοποίηση συλλογής δεδομένων σταθμού δοκιμών για τα αποτελέσματα δοκιμών"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr "Ενεργοποίηση ping μηχανημάτων"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr "Ενεργοποίηση περιοδικού ping των καταχωρημένων μηχανημάτων για έλεγχο της κατάστασής τους"
@@ -3911,29 +3919,29 @@ msgstr "Το προϊόν είναι ενεργό"
msgid "Manufacturer is Active"
msgstr "Ο κατασκευαστής είναι ενεργός"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Το προϊόν προμηθευτή είναι ενεργό"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Το εσωτερικό προϊόν είναι ενεργό"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Ο προμηθευτής είναι ενεργός"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Κατασκευαστής"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Εταιρεία"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Διαθέτει απόθεμα"
@@ -3969,7 +3977,7 @@ msgstr "Τηλέφωνο επικοινωνίας"
msgid "Contact email address"
msgstr "Email επικοινωνίας"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Επαφή"
@@ -4022,255 +4030,247 @@ msgstr "ΑΦΜ"
msgid "Company Tax ID"
msgstr "ΑΦΜ εταιρείας"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Διεύθυνση"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Διευθύνσεις"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Επιλογή εταιρείας"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Τίτλος διεύθυνσης"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Τίτλος που περιγράφει την εγγραφή διεύθυνσης"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Κύρια διεύθυνση"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Ορισμός ως κύριας διεύθυνσης"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Γραμμή 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Γραμμή διεύθυνσης 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Γραμμή 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Γραμμή διεύθυνσης 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Ταχυδρομικός κώδικας"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Πόλη/Περιοχή"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Πόλη/περιοχή ταχυδρομικού κώδικα"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Πολιτεία/Επαρχία"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Πολιτεία ή επαρχία"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Χώρα"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Χώρα διεύθυνσης"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Σημειώσεις αποστολής για courier"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Σημειώσεις για την αποστολή με courier"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Εσωτερικές σημειώσεις αποστολής"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Σημειώσεις αποστολής για εσωτερική χρήση"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Σύνδεσμος σε πληροφορίες διεύθυνσης (εξωτερικό)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Προϊόν κατασκευαστή"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Βασικό προϊόν"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Επιλογή προϊόντος"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Επιλογή κατασκευαστή"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Κωδικός προϊόντος κατασκευαστή"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL εξωτερικού συνδέσμου προϊόντος κατασκευαστή"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Περιγραφή προϊόντος κατασκευαστή"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Οι μονάδες συσκευασίας πρέπει να είναι συμβατές με τις μονάδες του βασικού προϊόντος"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Οι μονάδες συσκευασίας πρέπει να είναι μεγαλύτερες από το μηδέν"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Το συνδεδεμένο προϊόν κατασκευαστή πρέπει να αναφέρεται στο ίδιο βασικό προϊόν"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Προμηθευτής"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Επιλογή προμηθευτή"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Κωδικός αποθέματος προμηθευτή"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Είναι αυτό το προϊόν προμηθευτή ενεργό;"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Επιλογή προϊόντος κατασκευαστή"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL εξωτερικού συνδέσμου προϊόντος προμηθευτή"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Περιγραφή προϊόντος προμηθευτή"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "βασικό κόστος"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Ελάχιστη χρέωση (π.χ. χρέωση αποθήκευσης)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Συσκευασία"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Συσκευασία προϊόντος"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Ποσότητα ανά συσκευασία"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Συνολική ποσότητα που παρέχεται σε μία συσκευασία. Αφήστε κενό για μεμονωμένα είδη."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "πολλαπλάσιο"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Πολλαπλάσιο παραγγελίας"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Ποσότητα διαθέσιμη από τον προμηθευτή"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Η διαθεσιμότητα ενημερώθηκε"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Ημερομηνία τελευταίας ενημέρωσης δεδομένων διαθεσιμότητας"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Κλιμακωτή τιμή προμηθευτή"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Επιστρέφει την συμβολοσειρά αναπαράστασης της κύριας διεύθυνσης. Αυτή η ιδιότητα υπάρχει για λόγους συμβατότητας προς τα πίσω."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Προεπιλεγμένο νόμισμα που χρησιμοποιείται για αυτόν τον προμηθευτή"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Όνομα εταιρείας"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Σε απόθεμα"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr "Κλιμακωτές τιμές"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Προέκυψε σφάλμα κατά την εξαγωγή δεδομένων"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Το plugin εξαγωγής δεδομένων επέστρεψε λανθασμένη μορφή δεδομένων"
@@ -4418,7 +4418,7 @@ msgstr "Αρχικά δεδομένα γραμμής"
msgid "Errors"
msgstr "Σφάλματα"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Έγκυρο"
@@ -4530,7 +4530,7 @@ msgstr "Αριθμός αντιτύπων προς εκτύπωση για κά
msgid "Connected"
msgstr "Συνδεδεμένος"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Άγνωστο"
@@ -4662,7 +4662,7 @@ msgstr "Μέγιστη τιμή για τύπο προόδου, απαιτείτ
msgid "Order Reference"
msgstr "Αναφορά παραγγελίας"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Σε εκκρεμότητα"
@@ -4670,7 +4670,7 @@ msgstr "Σε εκκρεμότητα"
msgid "Has Project Code"
msgstr "Έχει κωδικό έργου"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Δημιουργήθηκε από"
@@ -4710,11 +4710,11 @@ msgstr "Ημερομηνία στόχος μετά"
msgid "Has Pricing"
msgstr "Έχει τιμολόγηση"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Ολοκληρώθηκε πριν"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Ολοκληρώθηκε μετά"
@@ -4722,40 +4722,40 @@ msgstr "Ολοκληρώθηκε μετά"
msgid "External Build Order"
msgstr "Εξωτερική εντολή παραγωγής"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Παραγγελία"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Η παραγγελία ολοκληρώθηκε"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Εσωτερικό προϊόν"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Η παραγγελία είναι σε εκκρεμότητα"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Ολοκληρώθηκε"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Έχει αποστολή"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Εντολή αγοράς"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Εντολή αγοράς"
msgid "Sales Order"
msgstr "Εντολές Πώλησης"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Συνολική τιμή"
msgid "Total price for this order"
msgstr "Συνολική τιμή για αυτή την παραγγελία"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Νόμισμα παραγγελίας"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Νόμισμα για αυτή την παραγγελία (αφήστε κενό για χρήση της προεπιλογής εταιρείας)"
@@ -4805,240 +4805,240 @@ msgstr "Η ημερομηνία έναρξης πρέπει να είναι πρ
msgid "Address does not match selected company"
msgstr "Η διεύθυνση δεν αντιστοιχεί στην επιλεγμένη εταιρεία"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Περιγραφή παραγγελίας (προαιρετικά)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Επιλογή κωδικού έργου για αυτή την παραγγελία"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Σύνδεσμος σε εξωτερική σελίδα"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Ημερομηνία έναρξης"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Προγραμματισμένη ημερομηνία έναρξης για αυτή την παραγγελία"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Επιθυμητή Προθεσμία"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Αναμενόμενη ημερομηνία παράδοσης παραγγελίας. Η παραγγελία θα θεωρείται εκπρόθεσμη μετά από αυτή την ημερομηνία."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Ημερομηνία έκδοσης"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Ημερομηνία έκδοσης της παραγγελίας"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Χρήστης ή ομάδα υπεύθυνη για αυτή την παραγγελία"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Σημείο επαφής για αυτή την παραγγελία"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Διεύθυνση εταιρείας για αυτή την παραγγελία"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Αναφορά παραγγελίας"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Κατάσταση"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Κατάσταση εντολής αγοράς"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Εταιρεία από την οποία παραγγέλνονται τα είδη"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Αναφορά προμηθευτή"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Κωδικός αναφοράς παραγγελίας προμηθευτή"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "παραλήφθηκε από"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Ημερομηνία ολοκλήρωσης της παραγγελίας"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Προορισμός"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Προορισμός για τα παραληφθέντα είδη"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Ο προμηθευτής προϊόντος πρέπει να ταιριάζει με τον προμηθευτή της εντολής αγοράς"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Η γραμμή δεν αντιστοιχεί στην εντολή αγοράς"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "Στη γραμμή λείπει συνδεδεμένο προϊόν"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Η ποσότητα πρέπει να είναι θετικός αριθμός"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Πελάτης"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Εταιρεία στην οποία πωλούνται τα είδη"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Κατάσταση εντολής πώλησης"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Αναφορά πελάτη "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Κωδικός αναφοράς παραγγελίας πελάτη"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Ημερομηνία αποστολής"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "απεστάλη από"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Η παραγγελία είναι ήδη ολοκληρωμένη"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Η παραγγελία είναι ήδη ακυρωμένη"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Μόνο μια ανοικτή παραγγελία μπορεί να σημειωθεί ως ολοκληρωμένη"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Η παραγγελία δεν μπορεί να ολοκληρωθεί καθώς υπάρχουν μη ολοκληρωμένες αποστολές"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "Η παραγγελία δεν μπορεί να ολοκληρωθεί καθώς υπάρχουν μη ολοκληρωμένες δεσμεύσεις αποθέματος"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Η παραγγελία δεν μπορεί να ολοκληρωθεί καθώς υπάρχουν μη ολοκληρωμένες γραμμές"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "Η παραγγελία είναι κλειδωμένη και δεν μπορεί να τροποποιηθεί"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Ποσότητα είδους"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Αναφορά γραμμής"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Σημειώσεις γραμμής"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Ημερομηνία στόχος για αυτή τη γραμμή (αφήστε κενό για χρήση της ημερομηνίας στόχου από την παραγγελία)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Περιγραφή γραμμής (προαιρετικά)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Πρόσθετο πλαίσιο για αυτή τη γραμμή"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Τιμή μονάδας"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Γραμμή εντολής αγοράς"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Το προϊόν προμηθευτή πρέπει να ταιριάζει με τον προμηθευτή"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "Η εντολή παραγωγής πρέπει να έχει σημειωθεί ως εξωτερική"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Οι εντολές παραγωγής μπορούν να συνδεθούν μόνο με προϊόντα συναρμολόγησης"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "Το προϊόν της εντολής παραγωγής πρέπει να ταιριάζει με το προϊόν της γραμμής"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Προϊόν προμηθευτή"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Παραλήφθηκε"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Αριθμός ειδών που παραλήφθηκαν"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Τιμή αγοράς"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Τιμή μονάδας αγοράς"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Εξωτερική εντολή παραγωγής που θα καλυφθεί από αυτή τη γραμμή"
@@ -5102,8 +5102,8 @@ msgstr "Έλεγχος από"
msgid "User who checked this shipment"
msgstr "Χρήστης που έλεγξε αυτή την αποστολή"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Αποστολή"
@@ -5164,7 +5164,11 @@ msgstr "Δεν είναι δυνατή η δέσμευση αποθέματος
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Η ποσότητα δέσμευσης δεν μπορεί να υπερβαίνει την ποσότητα αποθέματος"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Η ποσότητα πρέπει να είναι 1 για σειριοποιημένο είδος αποθέματος"
@@ -5172,7 +5176,7 @@ msgstr "Η ποσότητα πρέπει να είναι 1 για σειριοπ
msgid "Sales order does not match shipment"
msgstr "Η εντολή πώλησης δεν αντιστοιχεί στην αποστολή"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Η αποστολή δεν αντιστοιχεί στην εντολή πώλησης"
@@ -5256,247 +5260,247 @@ msgstr "Κόστος που σχετίζεται με την επιστροφή
msgid "Return Order Extra Line"
msgstr "Επιπλέον γραμμή εντολής επιστροφής"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID παραγγελίας"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID της παραγγελίας προς αντιγραφή"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Αντιγραφή γραμμών"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Αντιγραφή γραμμών από την αρχική παραγγελία"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Αντιγραφή επιπλέον γραμμών"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Αντιγραφή επιπλέον γραμμών από την αρχική παραγγελία"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Γραμμές"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Ολοκληρωμένες γραμμές"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Αντιγραφή παραγγελίας"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Καθορίστε επιλογές για την αντιγραφή αυτής της παραγγελίας"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Μη έγκυρο ID παραγγελίας"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Όνομα προμηθευτή"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Η παραγγελία δεν μπορεί να ακυρωθεί"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Να επιτρέπεται το κλείσιμο της παραγγελίας με μη ολοκληρωμένες γραμμές"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Η παραγγελία έχει μη ολοκληρωμένες γραμμές"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Η παραγγελία δεν είναι ανοικτή"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Αυτόματη τιμολόγηση"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Αυτόματος υπολογισμός τιμής αγοράς βάσει των δεδομένων προϊόντος προμηθευτή"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Νόμισμα τιμής αγοράς"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Συγχώνευση ειδών"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Συγχώνευση ειδών με το ίδιο προϊόν, προορισμό και ημερομηνία στόχο σε μία γραμμή"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Εσωτερικός κωδικός προϊόντος"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Εσωτερική ονομασία προϊόντος"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Πρέπει να καθοριστεί προϊόν προμηθευτή"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Πρέπει να καθοριστεί εντολή αγοράς"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Ο προμηθευτής πρέπει να ταιριάζει με την εντολή αγοράς"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Η εντολή αγοράς πρέπει να ταιριάζει με τον προμηθευτή"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Γραμμή"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Επιλογή τοποθεσίας προορισμού για τα παραληφθέντα είδη"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Εισαγάγετε κωδικό παρτίδας για τα εισερχόμενα είδη αποθέματος"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Ημερομηνία λήξης"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Εισαγάγετε ημερομηνία λήξης για τα εισερχόμενα είδη αποθέματος"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Εισαγάγετε σειριακούς αριθμούς για τα εισερχόμενα είδη αποθέματος"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Παράκαμψη πληροφοριών συσκευασίας για τα εισερχόμενα είδη αποθέματος"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Πρόσθετη σημείωση για τα εισερχόμενα είδη αποθέματος"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Barcode"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Σαρωμένο barcode"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Το barcode χρησιμοποιείται ήδη"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Πρέπει να δοθούν γραμμές"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Πρέπει να καθοριστεί τοποθεσία προορισμού"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Οι δοθείσες τιμές barcode πρέπει να είναι μοναδικές"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Αποστολές"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Ολοκληρωμένες αποστολές"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Νόμισμα τιμής πώλησης"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Δεσμευμένα είδη"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Δεν δόθηκαν λεπτομέρειες αποστολής"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Η γραμμή δεν συνδέεται με αυτή την παραγγελία"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Η ποσότητα πρέπει να είναι θετική"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Εισαγάγετε σειριακούς αριθμούς προς δέσμευση"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Η αποστολή έχει ήδη σταλεί"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Η αποστολή δεν συνδέεται με αυτή την παραγγελία"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Δεν βρέθηκε αντιστοίχιση για τους παρακάτω σειριακούς αριθμούς"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Οι παρακάτω σειριακοί αριθμοί δεν είναι διαθέσιμοι"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Γραμμή εντολής επιστροφής"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Η γραμμή δεν αντιστοιχεί στην εντολή επιστροφής"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Η γραμμή έχει ήδη παραληφθεί"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Είδη μπορούν να παραληφθούν μόνο για παραγγελίες που είναι σε εξέλιξη"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Ποσότητα προς επιστροφή"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Νόμισμα τιμής γραμμής"
@@ -5647,7 +5651,7 @@ msgstr "Το προϊόν Προϊόντος είναι υπό δοκιμή"
msgid "Uses"
msgstr "Χρήσεις"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Κατηγορία προϊόντος"
@@ -5656,7 +5660,7 @@ msgstr "Κατηγορία προϊόντος"
msgid "Part Categories"
msgstr "Κατηγορίες προϊόντων"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Προεπιλεγμένη τοποθεσία"
@@ -5664,7 +5668,7 @@ msgstr "Προεπιλεγμένη τοποθεσία"
msgid "Default location for parts in this category"
msgstr "Προεπιλεγμένη τοποθεσία για προϊόντα σε αυτή την κατηγορία"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Δομική"
@@ -5680,12 +5684,12 @@ msgstr "Προεπιλεγμένες λέξεις-κλειδιά"
msgid "Default keywords for parts in this category"
msgstr "Προεπιλεγμένες λέξεις-κλειδιά για προϊόντα σε αυτή την κατηγορία"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Εικονίδιο"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Εικονίδιο (προαιρετικό)"
@@ -5693,655 +5697,655 @@ msgstr "Εικονίδιο (προαιρετικό)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Δεν μπορείτε να κάνετε αυτή την κατηγορία προϊόντων δομική επειδή κάποια προϊόντα έχουν ήδη αντιστοιχιστεί σε αυτή!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Πρότυπο παραμέτρου κατηγορίας προϊόντος"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Προεπιλεγμένη τιμή"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Προεπιλεγμένη τιμή παραμέτρου"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Προϊόντα"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Δεν είναι δυνατή η διαγραφή αυτού του προϊόντος επειδή είναι κλειδωμένο"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Δεν είναι δυνατή η διαγραφή αυτού του προϊόντος επειδή είναι ακόμη ενεργό"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Δεν είναι δυνατή η διαγραφή αυτού του προϊόντος επειδή χρησιμοποιείται σε συναρμολόγηση"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Το προϊόν '{self}' δεν μπορεί να χρησιμοποιηθεί στο BOM για '{parent}' (αναδρομικά)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Το προϊόν '{parent}' χρησιμοποιείται στο BOM για '{self}' (αναδρομικά)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "Το IPN πρέπει να ταιριάζει με το πρότυπο regex {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Το προϊόν δεν μπορεί να είναι αναθεώρηση του εαυτού του"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Δεν μπορεί να γίνει αναθεώρηση προϊόντος που είναι ήδη αναθεώρηση"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Πρέπει να καθοριστεί κωδικός αναθεώρησης"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Οι αναθεωρήσεις επιτρέπονται μόνο για προϊόντα συναρμολόγησης"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Δεν μπορεί να γίνει αναθεώρηση προϊόντος προτύπου"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "Το γονικό προϊόν πρέπει να αντιστοιχεί στο ίδιο πρότυπο"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Υπάρχει ήδη είδος αποθέματος με αυτόν τον σειριακό αριθμό"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Δεν επιτρέπεται διπλό IPN στις ρυθμίσεις προϊόντος"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Υπάρχει ήδη διπλή αναθεώρηση προϊόντος."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Υπάρχει ήδη προϊόν με αυτό το όνομα, IPN και αναθεώρηση."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Τα προϊόντα δεν μπορούν να αντιστοιχιστούν σε δομικές κατηγορίες προϊόντων!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Όνομα προϊόντος"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Είναι πρότυπο"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Είναι αυτό το προϊόν προϊόν προτύπου;"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Είναι αυτό το προϊόν παραλλαγή άλλου προϊόντος;"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Παραλλαγή του"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Περιγραφή προϊόντος (προαιρετικά)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Λέξεις-κλειδιά"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Λέξεις-κλειδιά προϊόντος για βελτίωση της ορατότητας στα αποτελέσματα αναζήτησης"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Κατηγορία προϊόντος"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Αριθμός αναθεώρησης ή έκδοσης προϊόντος"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Αναθεώρηση"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Είναι αυτό το προϊόν αναθεώρηση άλλου προϊόντος;"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Αναθεώρηση του"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Πού αποθηκεύεται συνήθως αυτό το είδος;"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Προεπιλεγμένος προμηθευτής"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Προεπιλεγμένο προϊόν προμηθευτή"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Προεπιλεγμένη λήξη"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Χρόνος λήξης (σε ημέρες) για είδη αποθέματος αυτού του προϊόντος"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Ελάχιστο απόθεμα"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Ελάχιστο επιτρεπτό επίπεδο αποθέματος"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Μονάδες μέτρησης για αυτό το προϊόν"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Μπορεί αυτό το προϊόν να κατασκευαστεί από άλλα προϊόντα;"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Μπορεί αυτό το προϊόν να χρησιμοποιηθεί για την κατασκευή άλλων προϊόντων;"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Έχει αυτό το προϊόν ιχνηλάτηση για μοναδικά είδη;"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Μπορούν να καταχωρηθούν αποτελέσματα δοκιμών για αυτό το προϊόν;"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Μπορεί αυτό το προϊόν να αγοραστεί από εξωτερικούς προμηθευτές;"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Μπορεί αυτό το προϊόν να πωληθεί σε πελάτες;"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Είναι αυτό το προϊόν ενεργό;"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Κλειδωμένα προϊόντα δεν μπορούν να τροποποιηθούν"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Είναι αυτό ένα εικονικό προϊόν, όπως προϊόν λογισμικού ή άδεια;"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "Το BOM έχει επικυρωθεί"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Είναι το BOM για αυτό το προϊόν έγκυρο;"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Άθροισμα ελέγχου BOM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Αποθηκευμένο άθροισμα ελέγχου BOM"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Έλεγχος BOM από"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Ημερομηνία ελέγχου BOM"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Χρήστης δημιουργίας"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Ιδιοκτήτης υπεύθυνος για αυτό το προϊόν"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Πώληση πολλαπλάσιων"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Νόμισμα που χρησιμοποιείται για την προσωρινή αποθήκευση υπολογισμών τιμολόγησης"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Ελάχιστο κόστος BOM"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Ελάχιστο κόστος προϊόντων Προϊόντων"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Μέγιστο κόστος BOM"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Μέγιστο κόστος προϊόντων Προϊόντων"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Ελάχιστο κόστος αγοράς"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Ελάχιστο ιστορικό κόστος αγοράς"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Μέγιστο κόστος αγοράς"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Μέγιστο ιστορικό κόστος αγοράς"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Ελάχιστη εσωτερική τιμή"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Ελάχιστο κόστος βάσει εσωτερικών κλιμακωτών τιμών"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Μέγιστη εσωτερική τιμή"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Μέγιστο κόστος βάσει εσωτερικών κλιμακωτών τιμών"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Ελάχιστη τιμή προμηθευτή"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Ελάχιστη τιμή προϊόντος από εξωτερικούς προμηθευτές"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Μέγιστη τιμή προμηθευτή"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Μέγιστη τιμή προϊόντος από εξωτερικούς προμηθευτές"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Ελάχιστο κόστος παραλλαγής"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Υπολογισμένο ελάχιστο κόστος προϊόντων παραλλαγών"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Μέγιστο κόστος παραλλαγής"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Υπολογισμένο μέγιστο κόστος προϊόντων παραλλαγών"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Ελάχιστο κόστος"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Παράκαμψη ελάχιστου κόστους"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Μέγιστο κόστος"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Παράκαμψη μέγιστου κόστους"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Υπολογισμένο συνολικό ελάχιστο κόστος"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Υπολογισμένο συνολικό μέγιστο κόστος"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Ελάχιστη τιμή πώλησης"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Ελάχιστη τιμή πώλησης βάσει κλιμακωτών τιμών"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Μέγιστη τιμή πώλησης"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Μέγιστη τιμή πώλησης βάσει κλιμακωτών τιμών"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Ελάχιστο κόστος πώλησης"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Ελάχιστη ιστορική τιμή πώλησης"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Μέγιστο κόστος πώλησης"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Μέγιστη ιστορική τιμή πώλησης"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Προϊόν για απογραφή"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Αριθμός ειδών"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Αριθμός μεμονωμένων εγγραφών αποθέματος κατά τον χρόνο απογραφής"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Συνολικό διαθέσιμο απόθεμα κατά τον χρόνο απογραφής"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Ημερομηνία"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Ημερομηνία που πραγματοποιήθηκε η απογραφή"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Ελάχιστο κόστος αποθέματος"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Εκτιμώμενο ελάχιστο κόστος αποθέματος σε διαθεσιμότητα"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Μέγιστο κόστος αποθέματος"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Εκτιμώμενο μέγιστο κόστος αποθέματος σε διαθεσιμότητα"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Κλιμακωτή τιμή πώλησης προϊόντος"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Πρότυπο δοκιμής προϊόντος"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Μη έγκυρο όνομα προτύπου - πρέπει να περιλαμβάνει τουλάχιστον έναν αλφαριθμητικό χαρακτήρα"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Πρότυπα δοκιμών μπορούν να δημιουργηθούν μόνο για προϊόντα που είναι υπό δοκιμή"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Υπάρχει ήδη πρότυπο δοκιμής με το ίδιο κλειδί για το προϊόν"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Όνομα δοκιμής"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Εισαγάγετε όνομα για τη δοκιμή"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Κλειδί δοκιμής"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Απλοποιημένο κλειδί για τη δοκιμή"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Περιγραφή δοκιμής"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Εισαγάγετε περιγραφή για αυτή τη δοκιμή"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Είναι αυτή η δοκιμή ενεργή;"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Απαραίτητη"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Απαιτείται η επιτυχής ολοκλήρωση αυτής της δοκιμής;"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Απαιτεί τιμή"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Απαιτεί αυτή η δοκιμή τιμή κατά την προσθήκη αποτελέσματος δοκιμής;"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Απαιτεί συνημμένο"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Απαιτεί αυτή η δοκιμή συνημμένο αρχείο κατά την προσθήκη αποτελέσματος δοκιμής;"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Έγκυρες επιλογές για αυτή τη δοκιμή (διαχωρισμένες με κόμμα)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "Το στοιχείο BOM δεν μπορεί να τροποποιηθεί - η συναρμολόγηση είναι κλειδωμένη"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "Το στοιχείο BOM δεν μπορεί να τροποποιηθεί - η συναρμολόγηση παραλλαγής είναι κλειδωμένη"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Επιλέξτε γονικό προϊόν"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Υποπροϊόν"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Επιλέξτε προϊόν που θα χρησιμοποιηθεί στο BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Ποσότητα BOM για αυτό το στοιχείο BOM"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Αυτό το στοιχείο BOM είναι προαιρετικό"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Αυτό το στοιχείο BOM είναι αναλώσιμο (δεν παρακολουθείται στις εντολές παραγωγής)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Ποσότητα ρύθμισης"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "Επιπλέον απαιτούμενη ποσότητα για μια παραγωγή, για να ληφθούν υπόψη οι απώλειες ρύθμισης"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Φθορά"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Εκτιμώμενη φθορά για μια παραγωγή, εκφρασμένη ως ποσοστό (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Πολλαπλάσιο στρογγυλοποίησης"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "Στρογγυλοποίηση προς τα πάνω της απαιτούμενης ποσότητας παραγωγής στο πλησιέστερο πολλαπλάσιο αυτής της τιμής"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Αναφορά στοιχείου BOM"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Σημειώσεις στοιχείου BOM"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Άθροισμα ελέγχου"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Άθροισμα ελέγχου γραμμής BOM"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Επικυρωμένο"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Αυτό το στοιχείο BOM έχει επικυρωθεί"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Κληρονομείται"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Αυτό το στοιχείο BOM κληρονομείται από τα BOM για προϊόντα παραλλαγών"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Είδη αποθέματος για προϊόντα παραλλαγών μπορούν να χρησιμοποιηθούν για αυτό το στοιχείο BOM"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Η ποσότητα πρέπει να είναι ακέραια τιμή για προϊόντα με ιχνηλάτηση"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Πρέπει να καθοριστεί υποπροϊόν"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Εναλλακτικό στοιχείο BOM"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Το εναλλακτικό προϊόν δεν μπορεί να είναι το ίδιο με το κύριο προϊόν"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Γονικό στοιχείο BOM"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Εναλλακτικό προϊόν"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Προϊόν 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Προϊόν 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Επιλέξτε σχετικό προϊόν"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Σημείωση για αυτή τη σχέση"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Δεν μπορεί να δημιουργηθεί σχέση προϊόντος μεταξύ ενός προϊόντος και του εαυτού του"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Υπάρχει ήδη διπλή σχέση"
@@ -6465,203 +6469,199 @@ msgstr "Υπάρχει ήδη προϊόν κατασκευαστή με αυτ
msgid "Supplier part matching this SKU already exists"
msgstr "Υπάρχει ήδη προϊόν προμηθευτή με αυτό το SKU"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Όνομα κατηγορίας"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Σε παραγωγή"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Ποσότητα αυτού του προϊόντος που βρίσκεται αυτή τη στιγμή σε παραγωγή"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "Εκκρεμής ποσότητα αυτού του προϊόντος που έχει προγραμματιστεί για παραγωγή"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Είδη αποθέματος"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Αναθεωρήσεις"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Προμηθευτές"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Συνολικό απόθεμα"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Μη δεσμευμένο απόθεμα"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Απόθεμα παραλλαγών"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Αντιγραφή προϊόντος"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Αντιγραφή αρχικών δεδομένων από άλλο προϊόν"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Αρχικό απόθεμα"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Δημιουργία προϊόντος με αρχική ποσότητα αποθέματος"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Πληροφορίες προμηθευτή"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Προσθήκη αρχικών πληροφοριών προμηθευτή για αυτό το προϊόν"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Αντιγραφή παραμέτρων κατηγορίας"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Αντιγραφή προτύπων παραμέτρων από την επιλεγμένη κατηγορία προϊόντος"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Υπάρχουσα εικόνα"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Όνομα αρχείου υπάρχουσας εικόνας προϊόντος"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Το αρχείο εικόνας δεν υπάρχει"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Επικύρωση ολόκληρης της λίστας υλικών (BOM)"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Μπορεί να παραχθεί"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Απαιτείται για εντολές παραγωγής"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Δεσμευμένο σε εντολές παραγωγής"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Απαιτείται για εντολές πώλησης"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Δεσμευμένο σε εντολές πώλησης"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Ελάχιστη τιμή"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Παράκαμψη υπολογισμένης τιμής για την ελάχιστη τιμή"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Νόμισμα ελάχιστης τιμής"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Μέγιστη τιμή"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Παράκαμψη υπολογισμένης τιμής για τη μέγιστη τιμή"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Νόμισμα μέγιστης τιμής"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Ενημέρωση"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Ενημέρωση τιμολόγησης για αυτό το προϊόν"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Δεν ήταν δυνατή η μετατροπή από τα δοθέντα νομίσματα σε {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Η ελάχιστη τιμή δεν πρέπει να είναι μεγαλύτερη από τη μέγιστη τιμή"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Η μέγιστη τιμή δεν πρέπει να είναι μικρότερη από την ελάχιστη τιμή"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Επιλέξτε τη γονική συναρμολόγηση"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Επιλέξτε το προϊόν Προϊόντος"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Επιλέξτε προϊόν από το οποίο θα αντιγραφεί το BOM"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Αφαίρεση υπαρχόντων δεδομένων"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Αφαίρεση υπαρχόντων στοιχείων BOM πριν την αντιγραφή"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Συμπερίληψη κληρονομημένων"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Συμπερίληψη στοιχείων BOM που κληρονομούνται από προϊόντα προτύπων"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Παράλειψη μη έγκυρων γραμμών"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Ενεργοποιήστε αυτή την επιλογή για να παραλείπονται οι μη έγκυρες γραμμές"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Αντιγραφή εναλλακτικών προϊόντων"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Αντιγραφή εναλλακτικών προϊόντων κατά την αντιγραφή στοιχείων BOM"
@@ -6732,108 +6732,108 @@ msgstr "Δεν έχει καθοριστεί ενέργεια"
msgid "No matching action found"
msgstr "Δεν βρέθηκε αντίστοιχη ενέργεια"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Δεν βρέθηκε αντιστοίχιση για τα δεδομένα barcode"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Βρέθηκε αντιστοίχιση για τα δεδομένα barcode"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Το μοντέλο δεν υποστηρίζεται"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Δεν βρέθηκε η συγκεκριμένη εγγραφή του μοντέλου"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Το barcode αντιστοιχεί σε υπάρχον είδος"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Δεν βρέθηκαν αντίστοιχα δεδομένα προϊόντος"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Δεν βρέθηκαν αντίστοιχα προϊόντα προμηθευτή"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Βρέθηκαν πολλαπλά αντίστοιχα προϊόντα προμηθευτή"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Δεν βρέθηκε αντίστοιχο πρόσθετο για τα δεδομένα barcode"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Αντίστοιχο προϊόν προμηθευτή"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Το είδος έχει ήδη παραληφθεί"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Δεν υπάρχει πρόσθετο που να ταιριάζει για το barcode προμηθευτή"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Βρέθηκαν πολλαπλές αντίστοιχες γραμμές"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Δεν βρέθηκε αντίστοιχη γραμμή"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Δεν δόθηκε εντολή πώλησης"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Το barcode δεν αντιστοιχεί σε υπάρχον είδος αποθέματος"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Το είδος αποθέματος δεν ταιριάζει με τη γραμμή"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Μη επαρκές διαθέσιμο απόθεμα"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Το είδος αποθέματος δεσμεύτηκε στην εντολή πώλησης"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Μη επαρκείς πληροφορίες"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Βρέθηκε αντίστοιχο είδος"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Το προϊόν προμηθευτή δεν ταιριάζει με τη γραμμή"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Η γραμμή είναι ήδη ολοκληρωμένη"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Απαιτούνται επιπλέον πληροφορίες για την παραλαβή της γραμμής"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Παραλήφθηκε η γραμμή εντολής αγοράς"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Αποτυχία παραλαβής γραμμής"
@@ -6972,7 +6972,7 @@ msgstr "Παρέχει εγγενή υποστήριξη για barcodes"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr "Έκδοση οπισθοχρονολογημένων εντολών"
msgid "Automatically issue orders that are backdated"
msgstr "Αυτόματη έκδοση εντολών που είναι οπισθοχρονολογημένες"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Επίπεδα"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "Αριθμός επιπέδων προς εξαγωγή - ορίστε το σε μηδέν για εξαγωγή όλων των επιπέδων BOM"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Συνολική ποσότητα"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "Συμπερίληψη συνολικής ποσότητας κάθε προϊόντος στο BOM"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Δεδομένα αποθέματος"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Συμπερίληψη δεδομένων αποθέματος προϊόντος"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Δεδομένα τιμολόγησης"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Συμπερίληψη δεδομένων τιμολόγησης προϊόντος"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Δεδομένα προμηθευτή"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Συμπερίληψη δεδομένων προμηθευτή"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Δεδομένα κατασκευαστή"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Συμπερίληψη δεδομένων κατασκευαστή"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Δεδομένα εναλλακτικών"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Συμπερίληψη δεδομένων εναλλακτικών προϊόντων"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Δεδομένα παραμέτρων"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Συμπερίληψη δεδομένων παραμέτρων προϊόντος"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Εξαγωγέας BOM πολλαπλών επιπέδων"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Παρέχει υποστήριξη για εξαγωγή BOM πολλαπλών επιπέδων"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "Επίπεδο BOM"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Εναλλακτικό {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Προμηθευτής {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "SKU προμηθευτή {n}"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "MPN προμηθευτή {n}"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Κατασκευαστής {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "MPN κατασκευαστή {n}"
@@ -7354,11 +7354,11 @@ msgstr "Εκτυπωτής ετικετών μηχανής InvenTree"
msgid "Provides support for printing using a machine"
msgstr "Παρέχει υποστήριξη για εκτύπωση μέσω μηχανής"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "τελευταία χρήση"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Επιλογές"
@@ -8072,7 +8072,7 @@ msgstr "Σύνολο"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Σειριακός αριθμός"
@@ -8142,7 +8142,7 @@ msgstr "Το αρχείο εικόνας δεν βρέθηκε"
msgid "part_image tag requires a Part instance"
msgstr "Το tag part_image απαιτεί μία παρουσία Aντικειμένου"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "Το tag company_image απαιτεί ένα Aντικειμένου Company"
@@ -8158,7 +8158,7 @@ msgstr "Φιλτράρισμα κατά τοποθεσίες ανώτατου ε
msgid "Include sub-locations in filtered results"
msgstr "Συμπερίληψη υποτοποθεσιών στα φιλτραρισμένα αποτελέσματα"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Γονική τοποθεσία"
@@ -8311,314 +8311,314 @@ msgstr "Τύποι τοποθεσίας αποθέματος"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Προεπιλεγμένο εικονίδιο για όλες τις τοποθεσίες που δεν έχουν ορισμένο εικονίδιο (προαιρετικό)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Τοποθεσία αποθέματος"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Τοποθεσίες αποθέματος"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Ιδιοκτήτης"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Επιλέξτε ιδιοκτήτη"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Τα είδη αποθέματος δεν μπορούν να τοποθετηθούν απευθείας σε δομικές τοποθεσίες αποθέματος, αλλά μπορούν να τοποθετηθούν σε θυγατρικές τοποθεσίες."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Εξωτερικό"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Πρόκειται για εξωτερική τοποθεσία αποθέματος"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Τύπος τοποθεσίας"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Ο τύπος τοποθεσίας αποθέματος για αυτή την τοποθεσία"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Δεν μπορείτε να κάνετε αυτή την τοποθεσία αποθέματος δομική, επειδή κάποια είδη αποθέματος είναι ήδη τοποθετημένα σε αυτή!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "Το {field} δεν υπάρχει"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Πρέπει να καθοριστεί προϊόν"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Τα είδη αποθέματος δεν μπορούν να τοποθετηθούν σε δομικές τοποθεσίες αποθέματος!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Δεν μπορεί να δημιουργηθεί είδος αποθέματος για εικονικά προϊόντα"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Ο τύπος προϊόντος ('{self.supplier_part.part}') πρέπει να είναι {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Η ποσότητα πρέπει να είναι 1 για είδος με σειριακό αριθμό"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Δεν μπορεί να οριστεί σειριακός αριθμός αν η ποσότητα είναι μεγαλύτερη από 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Το είδος δεν μπορεί να ανήκει στον εαυτό του"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Το είδος πρέπει να έχει αναφορά παραγωγής αν is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Η αναφορά παραγωγής δεν αντιστοιχεί στο ίδιο προϊόν"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Γονικό είδος αποθέματος"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Βασικό προϊόν"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Επιλέξτε αντίστοιχο προϊόν προμηθευτή για αυτό το είδος αποθέματος"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Πού βρίσκεται αυτό το είδος αποθέματος;"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Συσκευασία στην οποία αποθηκεύεται αυτό το είδος αποθέματος"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Εγκατεστημένο σε"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Είναι αυτό το είδος εγκατεστημένο σε άλλο είδος;"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Σειριακός αριθμός για αυτό το είδος"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Κωδικός παρτίδας για αυτό το είδος αποθέματος"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Ποσότητα αποθέματος"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Πηγή παραγωγής"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Εντολή παραγωγής για αυτό το είδος αποθέματος"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Έχει αναλωθεί από"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Εντολή παραγωγής που κατανάλωσε αυτό το είδος αποθέματος"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Πηγή εντολής αγοράς"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Εντολή αγοράς για αυτό το είδος αποθέματος"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Εντολή πώλησης προορισμού"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Ημερομηνία λήξης για το είδος αποθέματος. Το απόθεμα θα θεωρείται ληγμένο μετά από αυτή την ημερομηνία"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Διαγραφή κατά την εξάντληση"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Διαγραφή αυτού του είδους αποθέματος όταν εξαντληθεί"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Τιμή αγοράς ανά μονάδα κατά τον χρόνο αγοράς"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Μετατράπηκε σε προϊόν"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "Η ποσότητα υπερβαίνει το διαθέσιμο απόθεμα"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Το προϊόν δεν έχει οριστεί ως ιχνηλάσιμο"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Η ποσότητα πρέπει να είναι ακέραιος αριθμός"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Η ποσότητα δεν πρέπει να υπερβαίνει το διαθέσιμο απόθεμα ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Οι σειριακοί αριθμοί πρέπει να δοθούν ως λίστα"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Η ποσότητα δεν αντιστοιχεί στους σειριακούς αριθμούς"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Το πρότυπο δοκιμής δεν υπάρχει"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Το είδος αποθέματος έχει αντιστοιχιστεί σε εντολή πώλησης"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Το είδος αποθέματος είναι εγκατεστημένο σε άλλο είδος"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Το είδος αποθέματος περιέχει άλλα είδη"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Το είδος αποθέματος έχει αντιστοιχιστεί σε πελάτη"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Το είδος αποθέματος βρίσκεται αυτή τη στιγμή σε παραγωγή"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Σειριακό απόθεμα δεν μπορεί να συγχωνευθεί"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Διπλότυπα είδη αποθέματος"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Τα είδη αποθέματος πρέπει να αναφέρονται στο ίδιο προϊόν"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Τα είδη αποθέματος πρέπει να αναφέρονται στο ίδιο προϊόν προμηθευτή"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Οι κωδικοί κατάστασης αποθέματος πρέπει να ταιριάζουν"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Το StockItem δεν μπορεί να μετακινηθεί καθώς δεν βρίσκεται σε απόθεμα"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Ιχνηλάτηση είδους αποθέματος"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Σημειώσεις καταχώρησης"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Αποτέλεσμα δοκιμής είδους αποθέματος"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Πρέπει να δοθεί τιμή για αυτή τη δοκιμή"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Πρέπει να μεταφορτωθεί συνημμένο για αυτή τη δοκιμή"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Μη έγκυρη τιμή για αυτή τη δοκιμή"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Αποτέλεσμα δοκιμής"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Τιμή αποτελέσματος δοκιμής"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Συνημμένο αποτελέσματος δοκιμής"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Σημειώσεις δοκιμής"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Σταθμός δοκιμής"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "Ο αναγνωριστικός κωδικός του σταθμού δοκιμής όπου πραγματοποιήθηκε η δοκιμή"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Έναρξη"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Χρονική σήμανση έναρξης της δοκιμής"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Ολοκλήρωση"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Χρονική σήμανση λήξης της δοκιμής"
@@ -8662,43 +8662,43 @@ msgstr "Επιλέξτε προϊόν για το οποίο θα δημιουρ
msgid "Quantity of serial numbers to generate"
msgstr "Ποσότητα σειριακών αριθμών προς δημιουργία"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Πρότυπο δοκιμής για αυτό το αποτέλεσμα"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr "Δεν βρέθηκε αντίστοιχη δοκιμή για αυτό το προϊόν"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "Πρέπει να δοθεί Template ID ή όνομα δοκιμής"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "Η ώρα λήξης της δοκιμής δεν μπορεί να είναι προγενέστερη της ώρας έναρξης"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Γονικό είδος"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Γονικό είδος αποθέματος"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Χρήση μεγέθους συσκευασίας κατά την προσθήκη: η καθορισμένη ποσότητα είναι ο αριθμός των συσκευασιών"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "Χρήση μεγέθους συσκευασίας"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Εισαγάγετε σειριακούς αριθμούς για νέα είδη"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Κωδικός προϊόντος προμηθευτή"
@@ -8732,8 +8732,8 @@ msgstr "Δεν δόθηκε είδος αποθέματος"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Η ποσότητα δεν πρέπει να υπερβαίνει το διαθέσιμο απόθεμα ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Τοποθεσία προορισμού αποθέματος"
@@ -8805,103 +8805,103 @@ msgstr "Επιλέξτε είδη αποθέματος για αλλαγή κα
msgid "No stock items selected"
msgstr "Δεν επιλέχθηκαν είδη αποθέματος"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Υποτοποθεσίες"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Γονική τοποθεσία αποθέματος"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Το προϊόν πρέπει να είναι διαθέσιμο για πώληση"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Το είδος έχει δεσμευτεί σε εντολή πώλησης"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Το είδος έχει δεσμευτεί σε εντολή παραγωγής"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Πελάτης στον οποίο θα αποδοθούν τα είδη αποθέματος"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Η επιλεγμένη εταιρεία δεν είναι πελάτης"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Σημειώσεις απόδοσης αποθέματος"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Πρέπει να δοθεί λίστα ειδών αποθέματος"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Σημειώσεις συγχώνευσης αποθέματος"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Να επιτρέπονται διαφορετικοί προμηθευτές"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Να επιτρέπεται η συγχώνευση ειδών αποθέματος με διαφορετικά προϊόντα προμηθευτή"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Να επιτρέπεται διαφορετική κατάσταση"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Να επιτρέπεται η συγχώνευση ειδών αποθέματος με διαφορετικούς κωδικούς κατάστασης"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Πρέπει να δοθούν τουλάχιστον δύο είδη αποθέματος"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Καμία αλλαγή"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Τιμή πρωτεύοντος κλειδιού StockItem"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Το είδος δεν βρίσκεται σε απόθεμα"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "Το είδος βρίσκεται ήδη σε απόθεμα"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "Η ποσότητα δεν πρέπει να είναι αρνητική"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Σημειώσεις συναλλαγής αποθέματος"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "Συγχώνευση με υπάρχον απόθεμα"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "Συγχώνευση επιστρεφόμενων ειδών με υπάρχοντα είδη αποθέματος, όπου είναι δυνατό"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Επόμενος σειριακός αριθμός"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Προηγούμενος σειριακός αριθμός"
@@ -9383,83 +9383,83 @@ msgstr "Εντολές Πώλησης"
msgid "Return Orders"
msgstr "Εντολές Επιστροφής"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Όνομα χρήστη"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Όνομα"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Το όνομα του χρήστη"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Επώνυμο"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Το επώνυμο του χρήστη"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Διεύθυνση email του χρήστη"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Προσωπικό"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Διαθέτει ο χρήστης δικαιώματα προσωπικού;"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Υπερχρήστης"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Είναι ο χρήστης υπερχρήστης;"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Είναι ο λογαριασμός χρήστη ενεργός;"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Μόνο υπερχρήστης μπορεί να τροποποιήσει αυτό το πεδίο"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Κωδικός πρόσβασης"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Κωδικός πρόσβασης του χρήστη"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "Παράβλεψη προειδοποίησης"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "Παράβλεψη της προειδοποίησης σχετικά με τους κανόνες κωδικού πρόσβασης"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "Δεν έχετε δικαίωμα δημιουργίας χρηστών"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Ο λογαριασμός σας δημιουργήθηκε."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Παρακαλούμε χρησιμοποιήστε τη λειτουργία επαναφοράς κωδικού πρόσβασης για να συνδεθείτε"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Καλώς ήρθατε στο InvenTree"
diff --git a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po
index 911d3ac23c..eb4afe465a 100644
--- a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
+"POT-Creation-Date: 2026-01-17 04:55+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -18,47 +18,47 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr ""
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr ""
@@ -97,7 +97,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr ""
@@ -113,13 +113,13 @@ msgstr ""
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr ""
@@ -172,35 +172,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr ""
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -208,11 +208,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr ""
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -256,133 +256,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr ""
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr ""
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr ""
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -554,8 +554,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -563,21 +563,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -587,7 +587,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -597,9 +597,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -667,80 +667,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -780,9 +780,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -810,7 +810,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -858,17 +858,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -888,7 +888,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -905,7 +905,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -914,12 +914,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -932,7 +932,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -961,7 +961,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -977,23 +977,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1002,18 +1002,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1031,427 +1031,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1499,19 +1491,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1531,7 +1523,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1559,7 +1555,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1591,550 +1587,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2144,181 +2140,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2340,7 +2336,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2352,93 +2348,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2446,1128 +2450,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3912,29 +3920,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3970,7 +3978,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4023,255 +4031,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4419,7 +4419,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4531,7 +4531,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4663,7 +4663,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4671,7 +4671,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4711,11 +4711,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4723,40 +4723,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4765,7 +4765,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4782,11 +4782,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4806,240 +4806,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5103,8 +5103,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5165,7 +5165,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5173,7 +5177,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5257,247 +5261,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5648,7 +5652,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5657,7 +5661,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5665,7 +5669,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5681,12 +5685,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5694,655 +5698,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6466,203 +6470,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6733,108 +6733,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6973,7 +6973,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7071,111 +7071,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7355,11 +7355,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8073,7 +8073,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8143,7 +8143,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8159,7 +8159,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8312,314 +8312,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8663,43 +8663,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8733,8 +8733,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8806,103 +8806,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9384,82 +9384,82 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po
index 0ed49b83a3..bf14bea4d0 100644
--- a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "endpoint API no encontrado"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Lista de artículos o filtros deben ser proporcionados para la operación en bloque"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Los artículos deben ser proporcionados como una lista"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Lista de artículos no válida"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Los filtros deben ser introducidos como un diccionario"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Filtros proporcionados inválidos"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Todos los filtros tienen que ser usados con verdadero"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Ningún artículo coincide con el criterio proporcionado"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Sin datos proporcionados"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "El usuario no tiene permiso para ver este modelo"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "No se pudo convertir {original} a {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Cantidad proporcionada no válida"
@@ -112,13 +112,13 @@ msgstr "Ingrese la fecha"
msgid "Invalid decimal value"
msgstr "Número decimal no válido"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Notas"
@@ -171,35 +171,35 @@ msgstr "Eliminar etiquetas HTML de este valor"
msgid "Data contains prohibited markdown content"
msgstr "Los datos contienen contenido de marcado prohibido"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Error de conexión"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "El servidor respondió con código de estado no válido"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Se ha producido una excepción"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "El servidor respondió con un valor de longitud de contenido inválido"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "El tamaño de la imagen es demasiado grande"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "La descarga de imagen excedió el tamaño máximo"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "El servidor remoto devolvió una respuesta vacía"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "La URL proporcionada no es un archivo de imagen válido"
@@ -207,11 +207,11 @@ msgstr "La URL proporcionada no es un archivo de imagen válido"
msgid "Log in to the app"
msgstr "Iniciar sesión en la aplicación"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Correo electrónico"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Debe habilitar la autenticación de doble factor antes de continuar."
@@ -255,133 +255,133 @@ msgstr "La referencia debe coincidir con la expresión regular {pattern}"
msgid "Reference number is too large"
msgstr "El número de referencia es demasiado grande"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Selección no válida"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nombre"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Descripción"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Descripción (opcional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Ruta"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Los nombres duplicados no pueden existir bajo el mismo padre"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Notas de Markdown (opcional)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Datos de código de barras"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Datos de código de barras de terceros"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash del Código de barras"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hash único de datos de código de barras"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Código de barras existente encontrado"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Fallo en la tarea"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "La tarea en segundo plano '{f}' falló después de {n} intentos"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Error de servidor"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Se ha registrado un error por el servidor."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Imágen"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Debe ser un número válido"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Moneda"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Seleccionar moneda de las opciones disponibles"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Valor inválido"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Imagen remota"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL de imagen remota"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "La descarga de imágenes desde la URL remota no está habilitada"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Error al descargar la imagen desde la URL remota"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Unidad física inválida"
msgid "Not a valid currency code"
msgstr "No es un código de moneda válido"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Estado del pedido"
@@ -562,21 +562,21 @@ msgstr "Estado del pedido"
msgid "Parent Build"
msgstr "Construcción o Armado Superior"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Incluye Variantes"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Incluye Variantes"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Incluye Variantes"
msgid "Part"
msgstr "Parte"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Categoría"
@@ -666,80 +666,80 @@ msgstr "Fecha Máxima"
msgid "Exclude Tree"
msgstr "Excluir Árbol"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "La compilación debe cancelarse antes de poder ser eliminada"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Consumible"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opcional"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Montaje"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Rastreado"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Comprobable"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Pedido pendiente"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Asignadas"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Agotado"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Disponible"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "En pedido"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Construir órden"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Ubicación"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Salida"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "La fecha límite debe ser posterior a la fecha de inicio"
msgid "Build Order Reference"
msgstr "Número de orden de construcción o armado"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referencia de orden de venta"
msgid "SalesOrder to which this build is allocated"
msgstr "Orden de Venta a la que se asigna"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Ubicación de la fuente"
@@ -857,17 +857,17 @@ msgstr "Estado de la construcción"
msgid "Build status code"
msgstr "Código de estado de construcción"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Numero de lote"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Número de lote de este producto final"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Fecha de Creación"
@@ -887,7 +887,7 @@ msgstr "Fecha límite de finalización"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Fecha límite para la finalización de la construcción. La construcción estará vencida después de esta fecha."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Fecha de finalización"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "El usuario que emitió esta orden"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Responsable"
@@ -913,12 +913,12 @@ msgstr "Responsable"
msgid "User or group responsible for this build order"
msgstr "Usuario o grupo responsable de esta orden de construcción"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Link externo"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Enlace a URL externa"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Prioridad de esta orden de construcción"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Código del proyecto"
@@ -960,7 +960,7 @@ msgstr "El pedido {build} ha sido procesado"
msgid "A build order has been completed"
msgstr "Pedido #[order] ha sido procesado"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Los números de serie deben ser proporcionados para las partes rastreables"
@@ -976,23 +976,23 @@ msgstr "La construcción de la salida ya está completa"
msgid "Build output does not match Build Order"
msgstr "La salida de la construcción no coincide con el orden de construcción"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "La cantidad debe ser mayor que cero"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "La cantidad no puede ser mayor que la cantidad de salida"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas"
@@ -1001,18 +1001,18 @@ msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Construir línea de pedido"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Ensamblar equipo"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Ensamblar equipo"
msgid "Quantity"
msgstr "Cantidad"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Cantidad requerida para orden de ensamble"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Item de construcción o armado debe especificar un resultado o salida, ya que la parte maestra está marcada como rastreable"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "El artículo de almacén selelccionado no coincide con la línea BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La cantidad debe ser 1 para el stock serializado"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Cantidad asignada ({q}) no debe exceder la cantidad disponible de stock ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Artículo de stock sobreasignado"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Cantidad asignada debe ser mayor que cero"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La cantidad debe ser 1 para el stock serializado"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "El artículo de almacén selelccionado no coincide con la línea BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Artículo de stock"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Producto original de stock"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Cantidad de stock a asignar para construir"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Instalar en"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Artículo de stock de destino"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Nivel de construcción"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nombre de parte"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Etiqueta del código del proyecto"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Resultado de la construcción o armado"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "La salida de construcción no coincide con la construcción padre"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "La parte de salida no coincide con la parte de la Orden de Construcción"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Esta salida de construcción ya ha sido completada"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Esta salida de construcción no está completamente asignada"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Ingrese la cantidad para la producción de la construcción"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Cantidad entera requerida para partes rastreables"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Cantidad entera requerida, ya que la factura de materiales contiene partes rastreables"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Números de serie"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Introduzca los números de serie de salidas de construcción"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Ubicación de stock para objetos construidos"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Autoasignar Números de Serie"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Los siguientes números seriales ya existen o son inválidos"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Debe proporcionarse una lista de salidas de construcción"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Ubicación de almacén para salidas descartadas"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Descartar asignaciones"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Descartar cualquier asignación de existencias para las salidas descartadas"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Razón para descartar la salida de ensamble(s)"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Ubicación para las salidas de construcción completadas"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Aceptar Asignación Incompleta"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Completar salidas si el inventario no se ha asignado completamente"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Consumir Stock Asignado"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Consume cualquier stock que ya ha sido asignado a esta construcción"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Eliminar salidas incompletas"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Eliminar cualquier salida de construcción que no se haya completado"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "No permitido"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Aceptar como consumido por este pedido de construcción"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Liberar antes de completar esta orden de construcción"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Stock sobreasignado"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Cómo quieres manejar los artículos extra de inventario asignados a la orden de construcción"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Algunos artículos de inventario han sido sobreasignados"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Aceptar no asignado"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Aceptar que los artículos de stock no se han asignado completamente a este pedido de construcción"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "El stock requerido no ha sido completamente asignado"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Aceptar incompleto"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Aceptar que el número requerido de salidas de construcción no se han completado"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "La cantidad de construcción requerida aún no se ha completado"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "La orden de construcción tiene órdenes hijas de construcción abiertas"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Orden de construcción debe estar en estado de producción"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "El orden de construcción tiene salidas incompletas"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Linea de ensamble"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Resultado de la construcción o armado"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "La salida de la construcción debe apuntar a la misma construcción"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Crear partida"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part debe apuntar a la misma parte que la orden de construcción"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "El artículo debe estar en stock"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Cantidad disponible ({q}) excedida"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "La salida de la construcción debe especificarse para la asignación de partes rastreadas"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "La salida de construcción no se puede especificar para la asignación de partes no rastreadas"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Debe proporcionarse la adjudicación de artículos"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Ubicación de inventario donde las partes deben ser obtenidas (dejar en blanco para tomar de cualquier ubicación)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Excluir ubicación"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Excluir artículos de stock de esta ubicación seleccionada"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Stock intercambiable"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Los artículos de inventario en múltiples ubicaciones se pueden utilizar de forma intercambiable"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Sustituir stock"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Permitir la asignación de partes sustitutas"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Elementos opcionales"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Asignar artículos de la BOM opcionales para construir la orden"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Error al iniciar la tarea de asignación automática"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Referencia BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID de la parte BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Nombre de parte la BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Parte del proveedor"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Cantidad Asignada"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Referencia de orden de Ensamblado"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Nombre de la categoría por pieza"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Rastreable"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Heredado"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Permitir variantes"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Item de Lista de Materiales"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "En producción"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Stock externo"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Stock Disponible"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Stock sustituto disponible"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Stock variable disponible"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Orden de construcción atrasada"
msgid "Build order {bo} is now overdue"
msgstr "El pedido de construcción {bo} está atrasado"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "¿Es enlace?"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "¿Es archivo?"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "El usuario no tiene permiso para eliminar estos adjuntos"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "El usuario no tiene permiso para eliminar este adjunto"
@@ -1530,7 +1522,11 @@ msgstr "No se han proporcionado códigos de divisa válidos"
msgid "No plugin"
msgstr "Sin plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Etiqueta del código del proyecto"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Actualizado"
@@ -1558,7 +1554,7 @@ msgstr "Descripción del proyecto"
msgid "User or group responsible for this project"
msgstr "Usuario o grupo responsable de este projecto"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Tecla de ajustes"
@@ -1590,550 +1586,550 @@ msgstr "El valor no pasa las comprobaciones de validación"
msgid "Key string must be unique"
msgstr "Cadena de clave debe ser única"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Usuario"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Cantidad de salto de precio"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Precio"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Precio unitario a la cantidad especificada"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Endpoint"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Punto final en el que se recibe este webhook"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Nombre para este webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Activo"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Está activo este webhook"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token para el acceso"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Clave"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Secreto compartido para HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID de mensaje"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Identificador único para este mensaje"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Servidor"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Servidor desde el cual se recibió este mensaje"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Encabezado"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Encabezado del mensaje"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Cuerpo"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Cuerpo de este mensaje"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Endpoint en el que se recibió este mensaje"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Trabajado en"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "¿El trabajo en este mensaje ha terminado?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Título"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Enlace"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Publicado"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Resumen"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Leer"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "¿Esta noticia ya fue leída?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Archivo de imagen"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Unidad personalizada"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "El símbolo de la unidad debe ser único"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Nombre de unidad debe ser un identificador válido"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nombre de unidad"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Símbolo"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Símbolo de unidad opcional"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definición"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definición de unidad"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Archivo adjunto"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Archivo no encontrado"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Falta enlace externo"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Seleccionar archivo para adjuntar"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Comentario"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Comentario de archivo adjunto"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Fecha de carga"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Fecha de carga del archivo"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Tamaño del archivo"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Tamaño del archivo en bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Tipo de modelo no válido especificado para el archivo adjunto"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Estado personalizado"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Estados personalizados"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Llave lógica"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Valor"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Nombre del estado"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etiqueta"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etiqueta que se mostrará en el frontend"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Color"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Color que se mostrará en el frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modelo"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "El modelo debe ser seleccionado"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "La clave debe ser seleccionada"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "La clave lógica debe ser seleccionada"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Lista de selección"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Listas de Selección"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Nombre de la lista de selección"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Descripción de la lista de selección"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Bloqueado"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "¿Está bloqueada esta lista de selección?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "¿Se puede utilizar esta lista de selección?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Complemento de origen"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Complemento que proporciona la lista de selección"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Cadena de origen"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Cadena opcional que identifica la fuente usada para esta lista"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Entrada por defecto"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Entrada predeterminada para esta lista de selección"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Creado"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Fecha y hora en la que se creó la lista de selección"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Última actualización"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Fecha y hora en que la lista de selección fue actualizada por última vez"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Entrada de lista de selección"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Entradas de la lista de selección"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Lista de selección a la que pertenece esta entrada"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Valor del elemento de la lista de selección"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Etiqueta para la entrada de lista de selección"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Descripción de la entrada de lista de selección"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "¿Está activa esta entrada de la lista de selección?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Plantilla de parámetro"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "El nombre de parámetro en la plantilla tiene que ser único"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Nombre de Parámetro"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Unidades"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Casilla de verificación"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "¿Es este parámetro una casilla de verificación?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Opciones"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Opciones válidas para este parámetro (separados por comas)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Lista de selección para este parámetro"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Habilitado"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Opción inválida para el valor del parámetro"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Plantilla"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Datos"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Valor del parámetro"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Valor del parámetro"
msgid "Note"
msgstr "Nota"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Campo de nota opcional"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Escanear código de barras"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Datos de código de barras"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Usuario que escaneó el código de barras"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Fecha y hora del escaneo de código de barras"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Dispositivo URL que procesó el código de barras"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Contexto"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Datos de contexto para el escaneo de código de barras"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Respuesta"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Respuesta de datos del escaneo de código de barras"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultado"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "¿El escaneo de código de barras fue exitoso?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Clave"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} cancelado"
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Artículos Recibidos"
@@ -2351,93 +2347,101 @@ msgstr "Los artículos han sido recibidos contra una orden de compra"
msgid "Items have been received against a return order"
msgstr "Los artículos han sido recibidos contra una orden de devolución"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Está en ejecución"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Tareas pendientes"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Tareas Programadas"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Tareas fallidas"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Identificación de Tarea"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Identificación de tarea única"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Bloquear"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Bloquear hora"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nombre de la tarea"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Función"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nombre de la Función"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumentos"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumentos de la tarea"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Argumentos de palabra clave"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Argumentos de palabra clave de tarea"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nombre de Archivo"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "El usuario no tiene permiso para crear o editar archivos adjuntos para este modelo"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lista de selección bloqueada"
@@ -2445,1128 +2449,1132 @@ msgstr "Lista de selección bloqueada"
msgid "No group"
msgstr "Sin grupo"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "La URL del sitio está bloqueada por su configuración"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Reinicio requerido"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Se ha cambiado una configuración que requiere un reinicio del servidor"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migraciones pendientes"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Número de migraciones de base de datos pendientes"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Identificador único para esta instancia de InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nombre de la instancia del servidor"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Descriptor de cadena para la instancia del servidor"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Usar nombre de instancia"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Utilice el nombre de la instancia en la barra de título"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Restringir mostrar 'acerca de'"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Mostrar la modal `about` solo para superusuarios"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nombre de empresa"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Nombre interno de empresa"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL Base"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL base para la instancia del servidor"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Moneda predeterminada"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Seleccione la moneda base para los cálculos de precios"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Monedas admitidas"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Listado de códigos de divisa soportados"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Intervalo de actualización de moneda"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Con qué frecuencia actualizar los tipos de cambio (establecer a cero para desactivar)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "días"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Plugin de Actualización de Moneda"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Plugin de actualización de moneda a usar"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Descargar desde URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Permitir la descarga de imágenes y archivos remotos desde la URL externa"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Límite de tamaño de descarga"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Tamaño máximo de descarga permitido para la imagen remota"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Agente de usuario usado para descargar desde la URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Permitir reemplazar el agente de usuario utilizado para descargar imágenes y archivos desde URL externa (dejar en blanco para el valor predeterminado)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Validación estricta de URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Requerir especificación de esquema al validar URLs"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Actualizar intervalo de actualización"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Con qué frecuencia comprobar actualizaciones (establecer a cero para desactivar)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Copia de seguridad automática"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Activar copia de seguridad automática de los archivos de base de datos y medios"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervalo de respaldo automático"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Especificar número de días entre eventos automatizados de copia de seguridad"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Intervalo de eliminación de tareas"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Los resultados de las tareas en segundo plano se eliminarán después del número especificado de días"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Intervalo de eliminación de registro de errores"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Los registros de errores se eliminarán después del número especificado de días"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Intervalo de eliminación de notificaciones"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Las notificaciones de usuario se eliminarán después del número especificado de días"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Soporte de código de barras"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Habilitar el soporte para escáner de códigos de barras en la interfaz web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Guardar resultados de código de barras"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Guardar resultados de código de barras en la base de datos"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Número máximo de escaneos de código de barras"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Número máximo de resultados de escaneo de código de barras para almacenar"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Retraso de entrada de código de barras"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Tiempo de retraso en la lectura de códigos de barras"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Soporte para Webcam de código de barras"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Permitir escaneo de código de barras a través de webcam en el navegador"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Mostrar datos del código de barra como texto en el navegador"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Complemento para generar códigos de barra"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Complemento a usar para la generación de datos de códigos de barra internos"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revisiones de partes"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Habilitar campo de revisión para parte"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Regex IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Patrón de expresión regular para IPN de la parte coincidente"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Permitir IPN duplicado"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Permitir que varias partes compartan el mismo IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Permitir editar IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Permite cambiar el valor de IPN mientras se edita una parte"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Copiar parte de datos BOM"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Copiar datos BOM por defecto al duplicar una parte"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Copiar parámetros de parte"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copiar datos de parámetro por defecto al duplicar una parte"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Copiar parte de datos de prueba"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Copiar datos de parámetro por defecto al duplicar una parte"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Copiar plantillas de parámetros de categoría"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Copiar plantillas de parámetros de categoría al crear una parte"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Las partes son plantillas por defecto"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Componente"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Las partes pueden ser usadas como subcomponentes por defecto"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Comprable"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Las partes son comprables por defecto"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Vendible"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Las partes se pueden vender por defecto"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Las partes son rastreables por defecto"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtual"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Las partes son virtuales por defecto"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Mostrar partes relacionadas"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Mostrar partes relacionadas para una parte"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Datos iniciales de existencias"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permitir la creación del stock inicial al añadir una nueva parte"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Datos iniciales del proveedor"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Permitir la creación de datos iniciales del proveedor al agregar una nueva parte"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Formato de visualización de Nombre de Parte"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formato para mostrar el nombre de la parte"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Icono por defecto de la categoría de parte"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Icono por defecto de la categoría de parte (vacío significa que no hay icono)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Mínimo de lugares decimales en el precio"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Número mínimo de decimales a mostrar al procesar los datos de precios"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Máximo de lugares decimales en el precio"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Número máximo de decimales a mostrar al procesar los datos de precios"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Usar precios de proveedor"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Incluir descuentos de precios del proveedor en los cálculos generales de precios"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Anulación del historial de compra"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "El precio histórico de compra anula los descuentos de precios del proveedor"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Usar precio del artículo de almacén"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Usar los precios de los datos de inventario introducidos manualmente para los cálculos de precios"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Edad del precio del artículo de almacén"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Excluir artículos de almacén anteriores a este número de días de los cálculos de precios"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Usar precios variantes"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Incluir variantes de precios en los cálculos generales de precios"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Solo variantes activas"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Usar solo partes de variantes activas para calcular los precios de variantes"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervalo de reconstrucción de precios"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Número de días antes de que el precio de la parte se actualice automáticamente"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Precios internos"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Habilitar precios internos para partes"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Anulación del precio interno"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Si está disponible, los precios internos anulan los cálculos del rango de precios"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Habilitar impresión de etiquetas"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Habilitar impresión de etiquetas desde la interfaz web"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "PPP de la imagen de etiqueta"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Resolución DPI al generar archivos de imagen que suministrar para etiquetar complementos de impresión"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Habilitar informes"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Habilitar generación de informes"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Modo de depuración"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Generar informes en modo de depuración (salida HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Registrar errores de reportes"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Registrar errores ocurridos al generar reportes"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Tamaño de página"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Tamaño de página predeterminado para informes PDF"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Forzar unidades de parámetro"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Si se proporcionan unidades, los valores de parámetro deben coincidir con las unidades especificadas"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Seriales únicos globalmente"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Los números de serie para los artículos de inventario deben ser únicos globalmente"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Eliminar existencias agotadas"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Determina el comportamiento por defecto al agotarse un artículo del inventario"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Plantilla de código de lote"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Plantilla para generar códigos de lote por defecto para artículos de almacén"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Expiración de stock"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Habilitar la funcionalidad de expiración de stock"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Vender existencias caducadas"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Permitir venta de existencias caducadas"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Tiempo histórico de Stock"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Número de días de artículos de stock se consideran obsoletos antes de caducar"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Crear Stock Caducado"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Permitir crear con stock caducado"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Control de Stock"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Habilitar control de propiedad sobre ubicaciones de stock y artículos"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Icono por defecto de ubicación de almacén"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Icono por defecto de ubicación de almacén (vacío significa que no hay icono)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Mostrar Articulos de Stock Instalados"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Mostrar los artículos de stock instalados en las tablas de stock"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Permitir transferencia Sin Existencias"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Permitir que artículos del inventario sin existencias puedan ser transferidos entre ubicaciones de inventario"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Patrón de Referencia de Ordenes de Armado"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la Orden de Ensamblado"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Requerir Dueño Responsable"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Se debe asignar un dueño responsable a cada orden"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Requerir Parte Activa"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Impedir la creación de órdenes de fabricación para partes inactivas"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Requerir Parte Bloqueada"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Impedir la creación de órdenes de fabricación para partes bloqueadas"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Impedir la creación de órdenes de fabricación a menos que se haya validado la lista de materiales"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Prevenir la finalización de la orden de construcción hasta que todas las órdenes hijas estén cerradas"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Bloquear hasta que los Tests pasen"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Evitar que las construcciones sean completadas hasta que todas las pruebas requeridas pasen"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Habilitar órdenes de devolución"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Habilitar la funcionalidad de orden de devolución en la interfaz de usuario"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Patrón de referencia de orden de devolución"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de devolución de la orden"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Editar ordenes de devolución completadas"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Permitir la edición de ordenes de devolución después de que hayan sido completados"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Patrón de Referencia de Ordenes de Venta"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la orden de venta"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Envío Predeterminado de Ordenes de Venta"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Habilitar la creación de envío predeterminado con ordenes de entrega"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Editar Ordenes de Venta Completados"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Permitir la edición de ordenes de venta después de que hayan sido enviados o completados"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Marcar pedidos enviados como completados"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Los pedidos marcados como enviados se completarán automáticamente, evitando el estado de \"envío\""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Patrón de Referencia de Orden de Compra"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la Orden de Compra"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Editar Ordenes de Compra Completados"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Permitir la edición de órdenes de venta después de que hayan sido enviados o completados"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Convertir moneda"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Autocompletar Ordenes de compra"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Marcar automáticamente las órdenes de compra como completas cuando se reciben todos los artículos de línea"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Habilitar función de contraseña olvidada"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Activar la función olvido de contraseña en las páginas de inicio de sesión"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Habilitar registro"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Activar auto-registro para usuarios en las páginas de inicio de sesión"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Habilitar SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Habilitar SSO en las páginas de inicio de sesión"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Habilitar registro SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Activar autoregistro a través de SSO para usuarios en las páginas de inicio de sesión"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Habilitar sincronización de grupo SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Habilitar la sincronización de grupos de Inventree con grupos proporcionados por el IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Clave de grupo SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "El nombre del atributo reclamado por el grupo proporcionado por el IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Mapa del grupo SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Un mapeo de grupos SSO a grupos de Inventree locales. Si el grupo local no existe, se creará."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Eliminar grupos fuera de SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email requerido"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Requiere usuario para suministrar correo al registrarse"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Auto-rellenar usuarios SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Rellenar automáticamente los datos de usuario de la cuenta SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Correo dos veces"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Al registrarse pregunte dos veces a los usuarios por su correo"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Contraseña dos veces"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Al registrarse, preguntar dos veces a los usuarios por su contraseña"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Dominios permitidos"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Restringir el registro a ciertos dominios (separados por comas, comenzando por @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupo al registrarse"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Grupo al que se asignan nuevos usuarios al registrarse. Si la sincronización de grupo SSO está activada, este grupo sólo se establece si no se puede asignar ningún grupo desde el IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Forzar MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Los usuarios deben utilizar seguridad multifactor."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Comprobar complementos al iniciar"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Comprobar que todos los complementos están instalados en el arranque - habilitar en entornos de contenedores"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Revisar actualizaciones del plugin"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Habilitar comprobaciones periódicas para actualizaciones de plugins instalados"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Habilitar integración de URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Habilitar plugins para añadir rutas de URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Habilitar integración de navegación"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Habilitar plugins para integrar en la navegación"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Habilitar integración de la aplicación"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Habilitar plugins para añadir aplicaciones"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Habilitar integración de programación"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Habilitar plugins para ejecutar tareas programadas"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Habilitar integración de eventos"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Habilitar plugins para responder a eventos internos"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Habilitar integración de interfaz"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Habilitar complementos para integrar en la interfaz de usuario"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Habilitar códigos de proyecto para rastrear proyectos"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Excluir Ubicaciones Externas"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Periodo de inventario automático"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Mostrar nombres completos de los usuarios"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Mostrar nombres completos de usuarios en lugar de nombres de usuario"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Habilitar datos de estación de prueba"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Habilitar la recolección de datos de estaciones de prueba para resultados de prueba"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "La parte está activa"
msgid "Manufacturer is Active"
msgstr "El fabricante está activo"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Fabricante"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Empresa"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Tiene Stock"
@@ -3969,7 +3977,7 @@ msgstr "Teléfono de contacto"
msgid "Contact email address"
msgstr "Correo electrónico de contacto"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contacto"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Dirección"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Direcciones"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Seleccionar empresa"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Título de dirección"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Título que describe la entrada de dirección"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Dirección principal"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Establecer como dirección principal"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Línea 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Dirección línea 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Línea 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Dirección línea 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Código postal"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Ciudad/región"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Código postal de ciudad/región"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Estado/provincia"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Estado o provincia"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "País"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Dirección de país"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notas de envío de mensajería"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notas para el mensajero de envío"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Notas de envío internas"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Notas de envío para uso interno"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Enlace a información de dirección (externa)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Parte del fabricante"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Parte base"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Seleccionar parte"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Seleccionar fabricante"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Número de parte de fabricante"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL para el enlace de parte del fabricante externo"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Descripción de la parte del fabricante"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Las unidades de paquete deben ser compatibles con las unidades de partes de base"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Las unidades de paquete deben ser mayor que cero"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Proveedor"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Seleccionar proveedor"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Unidad de mantenimiento de stock de proveedores"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Seleccionar parte del fabricante"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL del enlace de parte del proveedor externo"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Descripción de la parte del proveedor"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "costo base"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Paquetes"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Embalaje de partes"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Cantidad de paquete"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "múltiple"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Pedido múltiple"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Cantidad disponible del proveedor"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Disponibilidad actualizada"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Fecha de última actualización de los datos de disponibilidad"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Moneda predeterminada utilizada para este proveedor"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Nombre de la empresa"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "En Stock"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr "Datos de la fila original"
msgid "Errors"
msgstr "Errores"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Válido"
@@ -4530,7 +4530,7 @@ msgstr "Número de copias a imprimir para cada etiqueta"
msgid "Connected"
msgstr "Conectado"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Desconocido"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Referencia del pedido"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Destacado"
@@ -4670,7 +4670,7 @@ msgstr "Destacado"
msgid "Has Project Code"
msgstr "Tiene Código de Proyecto"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Creado por"
@@ -4710,11 +4710,11 @@ msgstr "Fecha objetivo después"
msgid "Has Pricing"
msgstr "Tiene Precio"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Completado antes de"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Completado después de"
@@ -4722,40 +4722,40 @@ msgstr "Completado después de"
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Orden"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Orden completada"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Componente interno"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Orden pendiente"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Completados"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Tiene envío"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Orden de compra"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Orden de compra"
msgid "Sales Order"
msgstr "Orden de Venta"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Precio Total"
msgid "Total price for this order"
msgstr "Precio total para este pedido"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Moneda de pedido"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Moneda para este pedido (dejar en blanco para utilizar el valor predeterminado de la empresa)"
@@ -4805,240 +4805,240 @@ msgstr "La fecha de inicio debe ser anterior a la fecha de límite"
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Descripción del pedido (opcional)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Seleccione el código del proyecto para este pedido"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Enlace a Url externa"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Fecha de inicio"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Fecha de inicio programada para este pedido"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Fecha objetivo"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Fecha esperada para la entrega del pedido. El pedido se retrasará después de esta fecha."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Fecha de emisión"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Fecha de expedición del pedido"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Usuario o grupo responsable de este pedido"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Punto de contacto para este pedido"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Dirección de la empresa para este pedido"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Referencia del pedido"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Estado"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Estado de la orden de compra"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Empresa de la cual se están encargando los artículos"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Referencia del proveedor"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Código de referencia de pedido del proveedor"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "recibido por"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "La fecha de pedido fue completada"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destinación"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Destino para los artículos recibidos"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "El proveedor de la parte debe coincidir con el proveedor de PO"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "La partida no coincide con la orden de compra"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "La cantidad debe ser un número positivo"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Cliente"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Empresa a la que se venden los artículos"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Estado de la orden de venta"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Referencia del cliente "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Código de referencia de pedido del cliente"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Fecha de envío"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "enviado por"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "La orden ya fue completada"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "La orden ya fue cancelada"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Sólo una orden abierta puede ser marcada como completa"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "El pedido no se puede completar porque hay envíos incompletos"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "El pedido no se puede completar ya que hay asignaciones incompletas"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "El pedido no se puede completar porque hay partidas incompletas"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "Este pedido está bloqueado y no puede ser modificado"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Cantidad del artículo"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Referencia de partida"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Notas de partida"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Fecha objetivo para esta partida (dejar en blanco para usar la fecha de destino de la orden)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Descripción de partida (opcional)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Contexto adicional para esta línea"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Precio unitario"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "La parte del proveedor debe coincidir con el proveedor"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Parte del proveedor"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Recibido"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Número de artículos recibidos"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Precio de Compra"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Precio de compra unitario"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Revisado por"
msgid "User who checked this shipment"
msgstr "Usuario que revisó este envío"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Envío"
@@ -5164,7 +5164,11 @@ msgstr "No se puede asignar stock a una línea sin una parte"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La cantidad de asignación no puede exceder la cantidad de stock"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Cantidad asignada debe ser mayor que cero"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "La cantidad debe ser 1 para el stock serializado"
@@ -5172,7 +5176,7 @@ msgstr "La cantidad debe ser 1 para el stock serializado"
msgid "Sales order does not match shipment"
msgstr "La orden de venta no coincide con el envío"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "El envío no coincide con el pedido de venta"
@@ -5256,247 +5260,247 @@ msgstr "Costo asociado con la devolución o reparación para esta partida"
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID del Pedido"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID del pedido a duplicar"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Copiar líneas"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Copiar elementos de línea del pedido original"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Copiar líneas adicionales"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Copiar elementos extra de la línea del pedido original"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Partidas"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Líneas completadas"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Duplicar pedido"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Especificar opciones para duplicar este pedido"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "ID de pedido no válido"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Nombre del proveedor"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "El pedido no puede ser cancelado"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Permitir cerrar el pedido con partidas incompletas"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "El pedido tiene partidas incompletas"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "El pedido no está abierto"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Precio automático"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Calcular precio de compra automáticamente con base en los datos del proveedor"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Moneda del precio de compra"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Combinar artículos"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Número de parte interna"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Nombre interno de parte"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Debe especificar la parte del proveedor"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "La orden de compra debe especificarse"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "El proveedor debe coincidir con la orden de compra"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "La orden de compra debe coincidir con el proveedor"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Partida"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Seleccione la ubicación de destino para los artículos recibidos"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Introduzca el código de lote para los artículos de almacén entrantes"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Fecha de Expiración"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Introduzca números de serie para artículos de almacén entrantes"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Código de barras"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Código de barras escaneado"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Código de barras en uso"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Se deben proporcionar las partidas"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Se requiere ubicación de destino"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Los valores del código de barras deben ser únicos"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Envíos"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Envíos completados"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Moneda del precio de venta"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Elementos asignados"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "No se proporcionaron detalles de envío"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "La partida no está asociada con este pedido"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "La cantidad debe ser positiva"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Introduzca números de serie para asignar"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "El envío ya ha sido enviado"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "El envío no está asociado con este pedido"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "No se han encontrado coincidencias para los siguientes números de serie"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Los siguientes números de serie no están disponibles"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Partida de orden de devolución"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "La partida no coincide con la orden de devolución"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "La partida ya ha sido recibida"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Los artículos sólo pueden ser recibidos contra pedidos en curso"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Cantidad a devolver"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Moneda de precio de línea"
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Categoría de parte"
@@ -5656,7 +5660,7 @@ msgstr "Categoría de parte"
msgid "Part Categories"
msgstr "Categorías de parte"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Ubicación Predeterminada"
@@ -5664,7 +5668,7 @@ msgstr "Ubicación Predeterminada"
msgid "Default location for parts in this category"
msgstr "Ubicación predeterminada para partes de esta categoría"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Estructural"
@@ -5680,12 +5684,12 @@ msgstr "Palabras clave predeterminadas"
msgid "Default keywords for parts in this category"
msgstr "Palabras clave por defecto para partes en esta categoría"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Icono"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Icono (opcional)"
@@ -5693,655 +5697,655 @@ msgstr "Icono (opcional)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Valor predeterminado"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Valor de parámetro por defecto"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Partes"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Ya existe un artículo de almacén con este número de serie"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN duplicado no permitido en la configuración de partes"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "La revisión de parte duplicada ya existe."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Parte con este nombre, IPN y revisión ya existe."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nombre de la parte"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Es plantilla"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "¿Es esta parte una parte de la plantilla?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "¿Es esta parte una variante de otra parte?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variante de"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Descripción de parte (opcional)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Palabras claves"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Categoría de parte"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Revisión de parte o número de versión"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revisión"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "¿Es esta parte una variante de otra parte?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Variante de"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "¿Dónde se almacena este artículo normalmente?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Proveedor por defecto"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Parte de proveedor predeterminada"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Expiración por defecto"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Stock mínimo"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Nivel mínimo de stock permitido"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Unidades de medida para esta parte"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "¿Se puede construir esta parte a partir de otras partes?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "¿Se puede utilizar esta parte para construir otras partes?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "¿Esta parte tiene seguimiento de objetos únicos?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "¿Se puede comprar esta parte a proveedores externos?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "¿Se puede vender esta parte a los clientes?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "¿Está activa esta parte?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Las partes bloqueadas no pueden ser editadas"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Suma de verificación de BOM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Suma de verificación de BOM almacenada"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "BOM comprobado por"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Fecha BOM comprobada"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Creación de Usuario"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Dueño responsable de esta parte"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Vender múltiples"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Moneda utilizada para almacenar en caché los cálculos de precios"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Costo mínimo de BOM"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Costo mínimo de partes de componentes"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Costo máximo de BOM"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Costo máximo de partes de componentes"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Costo mínimo de compra"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Costo histórico mínimo de compra"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Costo máximo de compra"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Costo histórico máximo de compra"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Precio interno mínimo"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Costo mínimo basado en precios reducidos internos"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Precio interno máximo"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Costo máximo basado en precios reducidos internos"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Precio mínimo de proveedor"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Precio mínimo de la parte de proveedores externos"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Precio máximo de proveedor"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Precio máximo de la parte de proveedores externos"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Costo mínimo de variante"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Costo mínimo calculado de las partes variantes"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Costo máximo de variante"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Costo máximo calculado de las partes variantes"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Costo mínimo"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Anular el costo mínimo"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Costo máximo"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Reemplazar coste máximo"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Costo mínimo general calculado"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Precio de venta mínimo"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Precio de venta mínimo basado en precios reducidos"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Precio de venta máximo"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Precio de venta máximo basado en precios reducidos"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Costo de venta mínimo"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Precio de venta mínimo histórico"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Costo de Venta Máximo"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Precio de venta máximo histórico"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Número de artículos"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Fecha"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Costo de Stock Mínimo"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Costo mínimo estimado del stock disponible"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Las plantillas de prueba solo pueden ser creadas para partes de prueba"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Nombre de prueba"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Introduzca un nombre para la prueba"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Descripción de prueba"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Introduce la descripción para esta prueba"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Requerido"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "¿Es necesario pasar esta prueba?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Requiere valor"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Adjunto obligatorio"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Seleccionar parte principal"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sub parte"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Seleccionar parte a utilizar en BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Cantidad del artículo en BOM"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Este artículo BOM es opcional"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Este artículo de BOM es consumible (no está rastreado en órdenes de construcción)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Referencia de artículo de BOM"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Notas del artículo de BOM"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Suma de verificación"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Suma de verificación de línea de BOM"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Validado"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Este artículo de BOM ha sido validado"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Este artículo BOM es heredado por BOMs para partes variantes"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "La cantidad debe ser un valor entero para las partes rastreables"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Debe especificar la subparte"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Ítem de BOM sustituto"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "La parte sustituta no puede ser la misma que la parte principal"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Artículo BOM superior"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Sustituir parte"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Parte 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Parte 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Seleccionar parte relacionada"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Nota para esta relación"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Nombre de categoría"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "En construcción"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Elementos de stock"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Proveedores"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Inventario Total"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Duplicar Parte"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Stock Inicial"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Crear Parte con cantidad inicial de stock"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Información del proveedor"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Añadir información inicial del proveedor para esta parte"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Copiar Parámetros de Categoría"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Copiar plantillas de parámetro de la categoría de partes seleccionada"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Imagen Existente"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "El archivo de imagen no existe"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Validación de Lista de Materiales"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Puede construir"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Precio mínimo"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Anular el valor calculado para precio mínimo"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Precio mínimo de moneda"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Precio máximo"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Precio máximo de moneda"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Actualizar"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "El precio mínimo no debe ser mayor que el precio máximo"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "El precio máximo no debe ser inferior al precio mínimo"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Seleccionar parte de la que copiar BOM"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Eliminar Datos Existentes"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Eliminar artículos BOM existentes antes de copiar"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Incluye Heredado"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Incluye artículos BOM que son heredados de partes con plantillas"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Omitir filas no válidas"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Activar esta opción para omitir filas inválidas"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Copiar partes sustitutas"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "No se especificó ninguna acción"
msgid "No matching action found"
msgstr "No se encontró ninguna acción coincidente"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "No se encontró ninguna coincidencia para los datos del código de barras"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Coincidencia encontrada para datos de códigos de barras"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "El código de barras coincide con artículo existente"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "No se ha encontrado ningún complemento para datos de código de barras"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Ningún pedido de venta proporcionado"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr "Proporciona soporte nativo para códigos de barras"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr "Total"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Número de serie"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Ubicación principal"
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Ubicación de Stock"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Ubicaciones de Stock"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Propietario"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Seleccionar Propietario"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Externo"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Se debe especificar la pieza"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "La cantidad debe ser 1 para el artículo con un número de serie"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Número de serie no se puede establecer si la cantidad es mayor que 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "El objeto no puede pertenecer a sí mismo"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "El artículo debe tener una referencia de construcción si is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "La referencia de la construcción no apunta al mismo objeto de parte"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Artículo de stock padre"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Parte base"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Seleccione una parte del proveedor correspondiente para este artículo de stock"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "¿Dónde se encuentra este artículo de stock?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Empaquetar este artículo de stock se almacena en"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Instalado en"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "¿Está este artículo instalado en otro artículo?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Número de serie para este artículo"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Código de lote para este artículo de stock"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Cantidad de Stock"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Build de origen"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Build para este item de stock"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Consumido por"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Orden de compra de origen"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Orden de compra para este artículo de stock"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Orden de venta de destino"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Fecha de caducidad del artículo de stock. El stock se considerará caducado después de esta fecha"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Eliminar al agotar"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Eliminar este artículo de stock cuando se agoten las existencias"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Precio de compra único en el momento de la compra"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Convertido a parte"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "La parte no está establecida como rastreable"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Cantidad debe ser un entero"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Los números de serie deben ser proporcionados como una lista"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "La cantidad no coincide con los números de serie"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Artículo de stock ha sido asignado a un pedido de venta"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Artículo de stock está instalado en otro artículo"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Artículo de stock contiene otros artículos"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Artículo de stock ha sido asignado a un cliente"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "El artículo de stock está en producción"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Stock serializado no puede ser combinado"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Artículos de Stock Duplicados"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Los artículos de stock deben referirse a la misma parte"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Los artículos de stock deben referirse a la misma parte del proveedor"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Los códigos de estado del stock deben coincidir"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Stock no se puede mover porque no está en stock"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Notas de entrada"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Debe proporcionarse un valor para esta prueba"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "El archivo adjunto debe ser subido para esta prueba"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Resultado de la prueba"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Valor de salida de prueba"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Adjunto de resultados de prueba"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Notas de prueba"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Finalizó"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Elemento padre"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Introduzca números de serie para nuevos artículos"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Número de pieza del proveedor"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "La cantidad no debe exceder la cantidad disponible de stock ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Ubicación de stock de destino"
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sub-ubicación"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "La parte debe ser vendible"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "El artículo está asignado a una orden de venta"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "El artículo está asignado a una orden de creación"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Cliente para asignar artículos de stock"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "La empresa seleccionada no es un cliente"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Notas de asignación de stock"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Debe proporcionarse una lista de artículos de stock"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Notas de fusión de stock"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Permitir proveedores no coincidentes"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Permitir fusionar artículos de stock con diferentes partes de proveedor"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Permitir estado no coincidente"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Permitir fusionar artículos de stock con diferentes códigos de estado"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Debe proporcionar al menos dos artículos de stock"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Sin cambios"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Valor de clave primaria de Stock"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "No hay existencias del artículo"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Notas de transacción de stock"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Órdenes de venta"
msgid "Return Orders"
msgstr "Ordenes de devolución"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nombre de usuario"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Nombre"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Nombre del usuario"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Apellido"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Apellido del usuario"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Dirección de correo del usuario"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personal"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Tiene este usuario permisos de personal"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superusuario"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Es este usuario un superusuario"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Esta cuenta de usuario está activa"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Su cuenta ha sido creada."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Por favor, utilice la función de restablecer la contraseña para iniciar sesión"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Bienvenido a InvenTree"
diff --git a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po
index b4e7e7be7c..efedff15cd 100644
--- a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Spanish, Mexico\n"
"Language: es_MX\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "endpoint API no encontrado"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Lista de artículos o filtros deben ser proporcionados para la operación en bloque"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Los artículos deben ser provistos como una lista"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Lista de artículos inválida"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Los filtros deben ser provistos como un diccionario"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Filtros proporcionados inválidos"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Todos los filtros sólo deben ser usados como verdaderos"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Ningún artículo coincide con el criterio proporcionado"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "El usuario no tiene permiso para ver este modelo"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "No se pudo convertir {original} a {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Cantidad proporcionada no válida"
@@ -112,13 +112,13 @@ msgstr "Ingrese la fecha"
msgid "Invalid decimal value"
msgstr "Número decimal inválido"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Notas"
@@ -171,35 +171,35 @@ msgstr "Eliminar etiquetas HTML de este valor"
msgid "Data contains prohibited markdown content"
msgstr "Los datos contienen contenido de markdown prohibido"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Error de conexión"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "El servidor respondió con código de estado no válido"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Se ha producido una excepción"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "El servidor respondió con un valor de longitud de contenido inválido"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "El tamaño de la imagen es demasiado grande"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "La descarga de imagen excedió el tamaño máximo"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "El servidor remoto devolvió una respuesta vacía"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "La URL proporcionada no es un archivo de imagen válido"
@@ -207,11 +207,11 @@ msgstr "La URL proporcionada no es un archivo de imagen válido"
msgid "Log in to the app"
msgstr "Iniciar sesión en la aplicación"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Correo electrónico"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Debe habilitar la autenticación de doble factor antes de hacer cualquier otra cosa."
@@ -255,133 +255,133 @@ msgstr "La referencia debe coincidir con la expresión regular {pattern}"
msgid "Reference number is too large"
msgstr "El número de referencia es demasiado grande"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Selección no válida"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nombre"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Descripción"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Descripción (opcional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Ruta"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Los nombres duplicados no pueden existir bajo el mismo padre"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Notas de Markdown (opcional)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Datos de código de barras"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Datos de código de barras de terceros"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash del Código de barras"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hash único de datos de código de barras"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Código de barras existente encontrado"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Fallo en la tarea"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "La tarea en segundo plano '{f}' falló después de {n} intentos"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Error de servidor"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Se ha registrado un error por el servidor."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Imágen"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Debe ser un número válido"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Moneda"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Seleccionar moneda de las opciones disponibles"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Valor inválido"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Imagen remota"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL de imagen remota"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "La descarga de imágenes desde la URL remota no está habilitada"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Error al descargar la imagen desde la URL remota"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Unidad física inválida"
msgid "Not a valid currency code"
msgstr "No es un código de moneda válido"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Estado del pedido"
@@ -562,21 +562,21 @@ msgstr "Estado del pedido"
msgid "Parent Build"
msgstr "Construcción o Armado Superior"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Incluye Variantes"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Incluye Variantes"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Incluye Variantes"
msgid "Part"
msgstr "Parte"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Categoría"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "La compilación debe cancelarse antes de poder ser eliminada"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Consumible"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opcional"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Montaje"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Rastreado"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Comprobable"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Pedido pendiente"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Asignadas"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Disponible"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "En pedido"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Construir órden"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Ubicación"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Número de orden de construcción o armado"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referencia de orden de venta"
msgid "SalesOrder to which this build is allocated"
msgstr "Orden de Venta a la que se asigna"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Ubicación de la fuente"
@@ -857,17 +857,17 @@ msgstr "Estado de la construcción"
msgid "Build status code"
msgstr "Código de estado de construcción"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Numero de lote"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Número de lote de este producto final"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Fecha de Creación"
@@ -887,7 +887,7 @@ msgstr "Fecha límite de finalización"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Fecha límite para la finalización de la construcción. La construcción estará vencida después de esta fecha."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Fecha de finalización"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "El usuario que emitió esta orden"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Responsable"
@@ -913,12 +913,12 @@ msgstr "Responsable"
msgid "User or group responsible for this build order"
msgstr "Usuario o grupo responsable de esta orden de construcción"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Link externo"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Enlace a URL externa"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Prioridad de esta orden de construcción"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Código del proyecto"
@@ -960,7 +960,7 @@ msgstr "El pedido {build} ha sido procesado"
msgid "A build order has been completed"
msgstr "Pedido #[order] ha sido procesado"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Los números de serie deben ser proporcionados para las partes rastreables"
@@ -976,23 +976,23 @@ msgstr "La construcción de la salida ya está completa"
msgid "Build output does not match Build Order"
msgstr "La salida de la construcción no coincide con el orden de construcción"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "La cantidad debe ser mayor que cero"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "La cantidad no puede ser mayor que la cantidad de salida"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas"
@@ -1001,18 +1001,18 @@ msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Construir línea de pedido"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Ensamblar equipo"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Ensamblar equipo"
msgid "Quantity"
msgstr "Cantidad"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Cantidad requerida para orden de ensamble"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Item de construcción o armado debe especificar un resultado o salida, ya que la parte maestra está marcada como rastreable"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "El artículo de almacén selelccionado no coincide con la línea BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La cantidad debe ser 1 para el stock serializado"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Cantidad asignada ({q}) no debe exceder la cantidad disponible de stock ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Artículo de stock sobreasignado"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Cantidad asignada debe ser mayor que cero"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La cantidad debe ser 1 para el stock serializado"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "El artículo de almacén selelccionado no coincide con la línea BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Artículo de stock"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Producto original de stock"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Cantidad de stock a asignar para construir"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Instalar en"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Artículo de stock de destino"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Nivel de construcción"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nombre de parte"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Etiqueta del código del proyecto"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Resultado de la construcción o armado"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "La salida de construcción no coincide con la construcción padre"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "La parte de salida no coincide con la parte de la Orden de Construcción"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Esta salida de construcción ya ha sido completada"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Esta salida de construcción no está completamente asignada"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Ingrese la cantidad para la producción de la construcción"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Cantidad entera requerida para partes rastreables"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Cantidad entera requerida, ya que la factura de materiales contiene partes rastreables"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Números de serie"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Introduzca los números de serie de salidas de construcción"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Ubicación de stock para objetos construidos"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Autoasignar Números de Serie"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Los siguientes números seriales ya existen o son inválidos"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Debe proporcionarse una lista de salidas de construcción"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Ubicación de almacén para salidas descartadas"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Descartar asignaciones"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Descartar cualquier asignación de existencias para las salidas descartadas"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Razón para descartar la salida de ensamble(s)"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Ubicación para las salidas de construcción completadas"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Aceptar Asignación Incompleta"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Completar salidas si el inventario no se ha asignado completamente"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Consumir Stock Asignado"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Consume cualquier stock que ya ha sido asignado a esta construcción"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Eliminar salidas incompletas"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Eliminar cualquier salida de construcción que no se haya completado"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "No permitido"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Aceptar como consumido por este pedido de construcción"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Liberar antes de completar esta orden de construcción"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Stock sobreasignado"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Cómo quieres manejar los artículos extra de inventario asignados a la orden de construcción"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Algunos artículos de inventario han sido sobreasignados"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Aceptar no asignado"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Aceptar que los artículos de stock no se han asignado completamente a este pedido de construcción"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "El stock requerido no ha sido completamente asignado"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Aceptar incompleto"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Aceptar que el número requerido de salidas de construcción no se han completado"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "La cantidad de construcción requerida aún no se ha completado"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "La orden de construcción tiene órdenes hijas de construcción abiertas"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Orden de construcción debe estar en estado de producción"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "El orden de construcción tiene salidas incompletas"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Linea de ensamble"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Resultado de la construcción o armado"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "La salida de la construcción debe apuntar a la misma construcción"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Crear partida"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part debe apuntar a la misma parte que la orden de construcción"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "El artículo debe estar en stock"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Cantidad disponible ({q}) excedida"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "La salida de la construcción debe especificarse para la asignación de partes rastreadas"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "La salida de construcción no se puede especificar para la asignación de partes no rastreadas"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Debe proporcionarse la adjudicación de artículos"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Ubicación de inventario donde las partes deben ser obtenidas (dejar en blanco para tomar de cualquier ubicación)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Excluir ubicación"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Excluir artículos de stock de esta ubicación seleccionada"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Stock intercambiable"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Los artículos de inventario en múltiples ubicaciones se pueden utilizar de forma intercambiable"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Sustituir stock"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Permitir la asignación de partes sustitutas"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Elementos opcionales"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Asignar artículos de la BOM opcionales para construir la orden"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Error al iniciar la tarea de asignación automática"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Referencia BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID de la parte BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Nombre de parte la BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Parte del proveedor"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Cantidad Asignada"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Referencia de orden de Ensamblado"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Nombre de la categoría por pieza"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Rastreable"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Heredado"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Permitir variantes"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Item de Lista de Materiales"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "En producción"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Stock externo"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Stock Disponible"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Stock sustituto disponible"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Stock variable disponible"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Orden de construcción atrasada"
msgid "Build order {bo} is now overdue"
msgstr "El pedido de construcción {bo} está atrasado"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "¿Es enlace?"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "¿Es archivo?"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "El usuario no tiene permiso para eliminar estos adjuntos"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "El usuario no tiene permiso para eliminar este adjunto"
@@ -1530,7 +1522,11 @@ msgstr "No se han proporcionado códigos de divisa válidos"
msgid "No plugin"
msgstr "Sin plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Etiqueta del código del proyecto"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Actualizado"
@@ -1558,7 +1554,7 @@ msgstr "Descripción del proyecto"
msgid "User or group responsible for this project"
msgstr "Usuario o grupo responsable de este projecto"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Tecla de ajustes"
@@ -1590,550 +1586,550 @@ msgstr "El valor no pasa las comprobaciones de validación"
msgid "Key string must be unique"
msgstr "Cadena de clave debe ser única"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Usuario"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Cantidad de salto de precio"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Precio"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Precio unitario a la cantidad especificada"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Endpoint"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Punto final en el que se recibe este webhook"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Nombre para este webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Activo"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Está activo este webhook"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token para el acceso"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Clave"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Secreto compartido para HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID de mensaje"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Identificador único para este mensaje"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Servidor desde el cual se recibió este mensaje"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Encabezado"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Encabezado del mensaje"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Cuerpo"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Cuerpo de este mensaje"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Endpoint en el que se recibió este mensaje"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Trabajado en"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "¿El trabajo en este mensaje ha terminado?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Título"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Enlace"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Publicado"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Resumen"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Leer"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "¿Esta noticia ya fue leída?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Archivo de imagen"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Tipo de modelo destino para esta imagen"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Unidad personalizada"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "El símbolo de la unidad debe ser único"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Nombre de unidad debe ser un identificador válido"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nombre de unidad"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Símbolo"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Símbolo de unidad opcional"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definición"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definición de unidad"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Archivo adjunto"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Archivo no encontrado"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Falta enlace externo"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Seleccionar archivo para adjuntar"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Comentario"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Comentario de archivo adjunto"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Fecha de carga"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Fecha de carga del archivo"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Tamaño del archivo"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Tamaño del archivo en bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Tipo de modelo no válido especificado para el archivo adjunto"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Estado personalizado"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Estados personalizados"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Conjunto de estado de referencia"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Conjunto de estado extendido con este estado personalizado"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Llave lógica"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Clave lógica del estado que es igual a este estado personalizado en la lógica de negocios"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Valor"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Valor numérico que se guardará en la base de datos de modelos"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Nombre del estado"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etiqueta"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etiqueta que se mostrará en el frontend"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Color"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Color que se mostrará en el frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modelo"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Modelo con el que este estado está asociado"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "El modelo debe ser seleccionado"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "La clave debe ser seleccionada"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "La clave lógica debe ser seleccionada"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "La clave debe ser distinta de la clave lógica"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Debe proporcionarse una clase de estado de referencia válida"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "La clave debe ser distinta de las claves lógicas del estado de referencia"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Lista de selección"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Listas de Selección"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Nombre de la lista de selección"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Descripción de la lista de selección"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Bloqueado"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "¿Está bloqueada esta lista de selección?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "¿Se puede utilizar esta lista de selección?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Complemento de origen"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Complemento que proporciona la lista de selección"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Cadena de origen"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Cadena opcional que identifica la fuente usada para esta lista"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Entrada por defecto"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Entrada predeterminada para esta lista de selección"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Creado"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Fecha y hora en la que se creó la lista de selección"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Última actualización"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Fecha y hora en que la lista de selección fue actualizada por última vez"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Entrada de lista de selección"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Entradas de la lista de selección"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Lista de selección a la que pertenece esta entrada"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Valor del elemento de la lista de selección"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Etiqueta para la entrada de lista de selección"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Descripción de la entrada de lista de selección"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "¿Está activa esta entrada de la lista de selección?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Plantilla de parámetro"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "El nombre de parámetro en la plantilla tiene que ser único"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Nombre de Parámetro"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Unidades"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Casilla de verificación"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "¿Es este parámetro una casilla de verificación?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Opciones"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Opciones válidas para este parámetro (separados por comas)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Lista de selección para este parámetro"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Habilitado"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Opción inválida para el valor del parámetro"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Plantilla"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Datos"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Valor del parámetro"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Valor del parámetro"
msgid "Note"
msgstr "Nota"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Campo de nota opcional"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Escanear código de barras"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Datos de código de barras"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Usuario que escaneó el código de barras"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Fecha y hora del escaneo de código de barras"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Dispositivo URL que procesó el código de barras"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Contexto"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Datos de contexto para el escaneo de código de barras"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Respuesta"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Respuesta de datos del escaneo de código de barras"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultado"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "¿El escaneo de código de barras fue exitoso?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Clave"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} cancelado"
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Artículos Recibidos"
@@ -2351,93 +2347,101 @@ msgstr "Los artículos han sido recibidos contra una orden de compra"
msgid "Items have been received against a return order"
msgstr "Los artículos han sido recibidos contra una orden de devolución"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Está en ejecución"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Tareas pendientes"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Tareas Programadas"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Tareas fallidas"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Identificación de Tarea"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Identificación de tarea única"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Bloquear"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Bloquear hora"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nombre de la tarea"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Función"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nombre de la Función"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumentos"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumentos de la tarea"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Argumentos de palabra clave"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Argumentos de palabra clave de tarea"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nombre de Archivo"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lista de selección bloqueada"
@@ -2445,1128 +2449,1132 @@ msgstr "Lista de selección bloqueada"
msgid "No group"
msgstr "Sin grupo"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "La URL del sitio está bloqueada por su configuración"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Reinicio requerido"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Se ha cambiado una configuración que requiere un reinicio del servidor"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migraciones pendientes"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Número de migraciones de base de datos pendientes"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nombre de la instancia del servidor"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Descriptor de cadena para la instancia del servidor"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Usar nombre de instancia"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Utilice el nombre de la instancia en la barra de título"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Restringir mostrar 'acerca de'"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Mostrar la modal `about` solo para superusuarios"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nombre de empresa"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Nombre interno de empresa"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL Base"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL base para la instancia del servidor"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Moneda predeterminada"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Seleccione la moneda base para los cálculos de precios"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Monedas admitidas"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Listado de códigos de divisa soportados"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Intervalo de actualización de moneda"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Con qué frecuencia actualizar los tipos de cambio (establecer a cero para desactivar)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "días"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Plugin de Actualización de Moneda"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Plugin de actualización de moneda a usar"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Descargar desde URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Permitir la descarga de imágenes y archivos remotos desde la URL externa"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Límite de tamaño de descarga"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Tamaño máximo de descarga permitido para la imagen remota"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Agente de usuario usado para descargar desde la URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Permitir reemplazar el agente de usuario utilizado para descargar imágenes y archivos desde URL externa (dejar en blanco para el valor predeterminado)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Validación estricta de URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Requerir especificación de esquema al validar URLs"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Actualizar intervalo de actualización"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Con qué frecuencia comprobar actualizaciones (establecer a cero para desactivar)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Copia de seguridad automática"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Activar copia de seguridad automática de los archivos de base de datos y medios"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervalo de respaldo automático"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Especificar número de días entre eventos automatizados de copia de seguridad"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Intervalo de eliminación de tareas"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Los resultados de las tareas en segundo plano se eliminarán después del número especificado de días"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Intervalo de eliminación de registro de errores"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Los registros de errores se eliminarán después del número especificado de días"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Intervalo de eliminación de notificaciones"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Las notificaciones de usuario se eliminarán después del número especificado de días"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Soporte de código de barras"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Habilitar el soporte para escáner de códigos de barras en la interfaz web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Guardar resultados de código de barras"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Guardar resultados de código de barras en la base de datos"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Número máximo de escaneos de código de barras"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Número máximo de resultados de escaneo de código de barras para almacenar"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Retraso de entrada de código de barras"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Tiempo de retraso en la lectura de códigos de barras"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Soporte para Webcam de código de barras"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Permitir escaneo de código de barras a través de webcam en el navegador"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Mostrar datos del código de barra como texto en el navegador"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Complemento para generar códigos de barra"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Complemento a usar para la generación de datos de códigos de barra internos"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revisiones de partes"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Habilitar campo de revisión para parte"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Regex IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Patrón de expresión regular para IPN de la parte coincidente"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Permitir IPN duplicado"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Permitir que varias partes compartan el mismo IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Permitir editar IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Permite cambiar el valor de IPN mientras se edita una parte"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Copiar parte de datos BOM"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Copiar datos BOM por defecto al duplicar una parte"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Copiar parámetros de parte"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copiar datos de parámetro por defecto al duplicar una parte"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Copiar parte de datos de prueba"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Copiar datos de parámetro por defecto al duplicar una parte"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Copiar plantillas de parámetros de categoría"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Copiar plantillas de parámetros de categoría al crear una parte"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Las partes son plantillas por defecto"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Componente"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Las partes pueden ser usadas como subcomponentes por defecto"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Comprable"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Las partes son comprables por defecto"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Vendible"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Las partes se pueden vender por defecto"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Las partes son rastreables por defecto"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtual"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Las partes son virtuales por defecto"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Mostrar partes relacionadas"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Mostrar partes relacionadas para una parte"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Datos iniciales de existencias"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permitir la creación del stock inicial al añadir una nueva parte"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Datos iniciales del proveedor"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Permitir la creación de datos iniciales del proveedor al agregar una nueva parte"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Formato de visualización de Nombre de Parte"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formato para mostrar el nombre de la parte"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Icono por defecto de la categoría de parte"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Icono por defecto de la categoría de parte (vacío significa que no hay icono)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Mínimo de lugares decimales en el precio"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Número mínimo de decimales a mostrar al procesar los datos de precios"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Máximo de lugares decimales en el precio"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Número máximo de decimales a mostrar al procesar los datos de precios"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Usar precios de proveedor"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Incluir descuentos de precios del proveedor en los cálculos generales de precios"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Anulación del historial de compra"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "El precio histórico de compra anula los descuentos de precios del proveedor"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Usar precio del artículo de almacén"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Usar los precios de los datos de inventario introducidos manualmente para los cálculos de precios"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Edad del precio del artículo de almacén"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Excluir artículos de almacén anteriores a este número de días de los cálculos de precios"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Usar precios variantes"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Incluir variantes de precios en los cálculos generales de precios"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Solo variantes activas"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Usar solo partes de variantes activas para calcular los precios de variantes"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervalo de reconstrucción de precios"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Número de días antes de que el precio de la parte se actualice automáticamente"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Precios internos"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Habilitar precios internos para partes"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Anulación del precio interno"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Si está disponible, los precios internos anulan los cálculos del rango de precios"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Habilitar impresión de etiquetas"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Habilitar impresión de etiquetas desde la interfaz web"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "PPP de la imagen de etiqueta"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Resolución DPI al generar archivos de imagen que suministrar para etiquetar complementos de impresión"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Habilitar informes"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Habilitar generación de informes"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Modo de depuración"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Generar informes en modo de depuración (salida HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Registrar errores de reportes"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Registrar errores ocurridos al generar reportes"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Tamaño de página"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Tamaño de página predeterminado para informes PDF"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Forzar unidades de parámetro"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Si se proporcionan unidades, los valores de parámetro deben coincidir con las unidades especificadas"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Seriales únicos globalmente"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Los números de serie para los artículos de inventario deben ser únicos globalmente"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Eliminar existencias agotadas"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Determina el comportamiento por defecto al agotarse un artículo del inventario"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Plantilla de código de lote"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Plantilla para generar códigos de lote por defecto para artículos de almacén"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Expiración de stock"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Habilitar la funcionalidad de expiración de stock"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Vender existencias caducadas"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Permitir venta de existencias caducadas"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Tiempo histórico de Stock"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Número de días de artículos de stock se consideran obsoletos antes de caducar"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Crear Stock Caducado"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Permitir crear con stock caducado"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Control de Stock"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Habilitar control de propiedad sobre ubicaciones de stock y artículos"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Icono por defecto de ubicación de almacén"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Icono por defecto de ubicación de almacén (vacío significa que no hay icono)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Mostrar Articulos de Stock Instalados"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Mostrar los artículos de stock instalados en las tablas de stock"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Revisar BOM al instalar artículos"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Los elementos de stock instalados deben existir en la BOM para la parte padre"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Permitir transferencia Sin Existencias"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Permitir que artículos del inventario sin existencias puedan ser transferidos entre ubicaciones de inventario"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Patrón de Referencia de Ordenes de Armado"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la Orden de Ensamblado"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Requerir Dueño Responsable"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Se debe asignar un dueño responsable a cada orden"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Requerir Parte Activa"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Impedir la creación de órdenes de fabricación para partes inactivas"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Requerir Parte Bloqueada"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Impedir la creación de órdenes de fabricación para partes bloqueadas"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Impedir la creación de órdenes de fabricación a menos que se haya validado la lista de materiales"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Prevenir la finalización de la orden de construcción hasta que todas las órdenes hijas estén cerradas"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Bloquear hasta que los Tests pasen"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Evitar que las construcciones sean completadas hasta que todas las pruebas requeridas pasen"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Habilitar órdenes de devolución"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Habilitar la funcionalidad de orden de devolución en la interfaz de usuario"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Patrón de referencia de orden de devolución"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de devolución de la orden"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Editar ordenes de devolución completadas"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Permitir la edición de ordenes de devolución después de que hayan sido completados"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Patrón de Referencia de Ordenes de Venta"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la orden de venta"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Envío Predeterminado de Ordenes de Venta"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Habilitar la creación de envío predeterminado con ordenes de entrega"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Editar Ordenes de Venta Completados"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Permitir la edición de ordenes de venta después de que hayan sido enviados o completados"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Marcar pedidos enviados como completados"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Los pedidos marcados como enviados se completarán automáticamente, evitando el estado de \"envío\""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Patrón de Referencia de Orden de Compra"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Patrón requerido para generar el campo de referencia de la Orden de Compra"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Editar Ordenes de Compra Completados"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Permitir la edición de órdenes de venta después de que hayan sido enviados o completados"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Autocompletar Ordenes de compra"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Marcar automáticamente las órdenes de compra como completas cuando se reciben todos los artículos de línea"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Habilitar función de contraseña olvidada"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Activar la función olvido de contraseña en las páginas de inicio de sesión"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Habilitar registro"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Activar auto-registro para usuarios en las páginas de inicio de sesión"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Habilitar SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Habilitar SSO en las páginas de inicio de sesión"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Habilitar registro SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Activar autoregistro a través de SSO para usuarios en las páginas de inicio de sesión"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Habilitar sincronización de grupo SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Habilitar la sincronización de grupos de Inventree con grupos proporcionados por el IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Clave de grupo SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "El nombre del atributo reclamado por el grupo proporcionado por el IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Mapa del grupo SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Un mapeo de grupos SSO a grupos de Inventree locales. Si el grupo local no existe, se creará."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Eliminar grupos fuera de SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email requerido"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Requiere usuario para suministrar correo al registrarse"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Auto-rellenar usuarios SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Rellenar automáticamente los datos de usuario de la cuenta SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Correo dos veces"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Al registrarse pregunte dos veces a los usuarios por su correo"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Contraseña dos veces"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Al registrarse, preguntar dos veces a los usuarios por su contraseña"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Dominios permitidos"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Restringir el registro a ciertos dominios (separados por comas, comenzando por @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupo al registrarse"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Grupo al que se asignan nuevos usuarios al registrarse. Si la sincronización de grupo SSO está activada, este grupo sólo se establece si no se puede asignar ningún grupo desde el IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Forzar MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Los usuarios deben utilizar seguridad multifactor."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Comprobar complementos al iniciar"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Comprobar que todos los complementos están instalados en el arranque - habilitar en entornos de contenedores"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Revisar actualizaciones del plugin"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Habilitar comprobaciones periódicas para actualizaciones de plugins instalados"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Habilitar integración de URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Habilitar plugins para añadir rutas de URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Habilitar integración de navegación"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Habilitar plugins para integrar en la navegación"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Habilitar integración de la aplicación"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Habilitar plugins para añadir aplicaciones"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Habilitar integración de programación"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Habilitar plugins para ejecutar tareas programadas"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Habilitar integración de eventos"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Habilitar plugins para responder a eventos internos"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Habilitar integración de interfaz"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Habilitar complementos para integrar en la interfaz de usuario"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Excluir Ubicaciones Externas"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Periodo de inventario automático"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Mostrar nombres completos de los usuarios"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Mostrar nombres completos de usuarios en lugar de nombres de usuario"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Habilitar datos de estación de prueba"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Habilitar la recolección de datos de estaciones de prueba para resultados de prueba"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Fabricante"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Empresa"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Tiene existencias"
@@ -3969,7 +3977,7 @@ msgstr "Teléfono de contacto"
msgid "Contact email address"
msgstr "Correo electrónico de contacto"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contacto"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Dirección"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Direcciones"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Seleccionar empresa"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Título de dirección"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Título que describe la entrada de dirección"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Dirección principal"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Establecer como dirección principal"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Línea 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Dirección línea 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Línea 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Dirección línea 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Código postal"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Ciudad/región"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Código postal de ciudad/región"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Estado/provincia"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Estado o provincia"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "País"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Dirección de país"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notas de envío de mensajería"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notas para el mensajero de envío"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Notas de envío internas"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Notas de envío para uso interno"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Enlace a información de dirección (externa)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Parte del fabricante"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Parte base"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Seleccionar parte"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Seleccionar fabricante"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Número de parte de fabricante"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL para el enlace de parte del fabricante externo"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Descripción de la parte del fabricante"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Las unidades de paquete deben ser compatibles con las unidades de partes de base"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Las unidades de paquete deben ser mayor que cero"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Proveedor"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Seleccionar proveedor"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Unidad de mantenimiento de stock de proveedores"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Seleccionar parte del fabricante"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL del enlace de parte del proveedor externo"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Descripción de la parte del proveedor"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "costo base"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Paquetes"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Embalaje de partes"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Cantidad de paquete"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "múltiple"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Pedido múltiple"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Cantidad disponible del proveedor"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Disponibilidad actualizada"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Fecha de última actualización de los datos de disponibilidad"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Moneda predeterminada utilizada para este proveedor"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Nombre de la empresa"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "En Stock"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr "Datos de la fila original"
msgid "Errors"
msgstr "Errores"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Válido"
@@ -4530,7 +4530,7 @@ msgstr "Número de copias a imprimir para cada etiqueta"
msgid "Connected"
msgstr "Conectado"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Desconocido"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Referencia del pedido"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Destacado"
@@ -4670,7 +4670,7 @@ msgstr "Destacado"
msgid "Has Project Code"
msgstr "Tiene Código de Proyecto"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Creado por"
@@ -4710,11 +4710,11 @@ msgstr "Fecha objetivo después de"
msgid "Has Pricing"
msgstr "Tiene Precio"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Completado antes de"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Completado después de"
@@ -4722,40 +4722,40 @@ msgstr "Completado después de"
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Orden"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Orden completada"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Componente interno"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Orden pendiente"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Completados"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Tiene envío"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Orden de compra"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Orden de compra"
msgid "Sales Order"
msgstr "Orden de Venta"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Precio Total"
msgid "Total price for this order"
msgstr "Precio total para este pedido"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Moneda de pedido"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Moneda para este pedido (dejar en blanco para utilizar el valor predeterminado de la empresa)"
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Descripción del pedido (opcional)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Seleccione el código del proyecto para este pedido"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Enlace a Url externa"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Fecha objetivo"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Fecha esperada para la entrega del pedido. El pedido se retrasará después de esta fecha."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Fecha de emisión"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Fecha de expedición del pedido"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Usuario o grupo responsable de este pedido"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Punto de contacto para este pedido"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Dirección de la empresa para este pedido"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Referencia del pedido"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Estado"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Estado de la orden de compra"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Empresa de la cual se están encargando los artículos"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Referencia del proveedor"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Código de referencia de pedido del proveedor"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "recibido por"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "La fecha de pedido fue completada"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destinación"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Destino para los artículos recibidos"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "El proveedor de la parte debe coincidir con el proveedor de PO"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "La partida no coincide con la orden de compra"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "La cantidad debe ser un número positivo"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Cliente"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Empresa a la que se venden los artículos"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Estado de la orden de venta"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Referencia del cliente "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Código de referencia de pedido del cliente"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Fecha de envío"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "enviado por"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "La orden ya fue completada"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "La orden ya fue cancelada"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Sólo una orden abierta puede ser marcada como completa"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "El pedido no se puede completar porque hay envíos incompletos"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "El pedido no se puede completar ya que hay asignaciones incompletas"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "El pedido no se puede completar porque hay partidas incompletas"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Cantidad del artículo"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Referencia de partida"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Notas de partida"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Fecha objetivo para esta partida (dejar en blanco para usar la fecha de destino de la orden)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Descripción de partida (opcional)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Contexto adicional para esta línea"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Precio unitario"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "La parte del proveedor debe coincidir con el proveedor"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Parte del proveedor"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Recibido"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Número de artículos recibidos"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Precio de Compra"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Precio de compra unitario"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Revisado por"
msgid "User who checked this shipment"
msgstr "Usuario que revisó este envío"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Envío"
@@ -5164,7 +5164,11 @@ msgstr "No se puede asignar stock a una línea sin una parte"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La cantidad de asignación no puede exceder la cantidad de stock"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Cantidad asignada debe ser mayor que cero"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "La cantidad debe ser 1 para el stock serializado"
@@ -5172,7 +5176,7 @@ msgstr "La cantidad debe ser 1 para el stock serializado"
msgid "Sales order does not match shipment"
msgstr "La orden de venta no coincide con el envío"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "El envío no coincide con el pedido de venta"
@@ -5256,247 +5260,247 @@ msgstr "Costo asociado con la devolución o reparación para esta partida"
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID del Pedido"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID del pedido a duplicar"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Copiar líneas"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Copiar partida del pedido original"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Copiar líneas adicionales"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Copiar partidas extra del pedido original"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Partidas"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Líneas completadas"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Duplicar pedido"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Especificar opciones para duplicar este pedido"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "ID de pedido inválido"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Nombre del proveedor"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "El pedido no puede ser cancelado"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Permitir cerrar el pedido con partidas incompletas"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "El pedido tiene partidas incompletas"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "El pedido no está abierto"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Precio automático"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Calcular precio de compra automáticamente con base en los datos del proveedor"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Moneda del precio de compra"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Combinar artículos"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Número de parte interna"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Nombre interno de parte"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Debe especificar la parte del proveedor"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "La orden de compra debe especificarse"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "El proveedor debe coincidir con la orden de compra"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "La orden de compra debe coincidir con el proveedor"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Partida"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Seleccione la ubicación de destino para los artículos recibidos"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Introduzca el código de lote para los artículos de almacén entrantes"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Fecha de Expiración"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Introduzca números de serie para artículos de almacén entrantes"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Código de barras"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Código de barras escaneado"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Código de barras en uso"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Se deben proporcionar las partidas"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Se requiere ubicación de destino"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Los valores del código de barras deben ser únicos"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Envíos"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Envíos completados"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Moneda del precio de venta"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Elementos asignados"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "No se proporcionaron detalles de envío"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "La partida no está asociada con este pedido"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "La cantidad debe ser positiva"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Introduzca números de serie para asignar"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "El envío ya ha sido enviado"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "El envío no está asociado con este pedido"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "No se han encontrado coincidencias para los siguientes números de serie"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Los siguientes números de serie no están disponibles"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Partida de orden de devolución"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "La partida no coincide con la orden de devolución"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "La partida ya ha sido recibida"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Los artículos sólo pueden ser recibidos contra pedidos en curso"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Cantidad a devolver"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Moneda de precio de línea"
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Categoría de parte"
@@ -5656,7 +5660,7 @@ msgstr "Categoría de parte"
msgid "Part Categories"
msgstr "Categorías de parte"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Ubicación Predeterminada"
@@ -5664,7 +5668,7 @@ msgstr "Ubicación Predeterminada"
msgid "Default location for parts in this category"
msgstr "Ubicación predeterminada para partes de esta categoría"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Estructural"
@@ -5680,12 +5684,12 @@ msgstr "Palabras clave predeterminadas"
msgid "Default keywords for parts in this category"
msgstr "Palabras clave por defecto para partes en esta categoría"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Icono"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Icono (opcional)"
@@ -5693,655 +5697,655 @@ msgstr "Icono (opcional)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Valor predeterminado"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Valor de parámetro por defecto"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Partes"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Ya existe un artículo de almacén con este número de serie"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN duplicado no permitido en la configuración de partes"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "La revisión de parte duplicada ya existe."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Parte con este nombre, IPN y revisión ya existe."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nombre de la parte"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Es plantilla"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "¿Es esta parte una parte de la plantilla?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "¿Es esta parte una variante de otra parte?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variante de"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Descripción de parte (opcional)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Palabras claves"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Categoría de parte"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Revisión de parte o número de versión"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revisión"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "¿Es esta parte una variante de otra parte?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Variante de"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "¿Dónde se almacena este artículo normalmente?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Proveedor por defecto"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Parte de proveedor predeterminada"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Expiración por defecto"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Stock mínimo"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Nivel mínimo de stock permitido"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Unidades de medida para esta parte"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "¿Se puede construir esta parte a partir de otras partes?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "¿Se puede utilizar esta parte para construir otras partes?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "¿Esta parte tiene seguimiento de objetos únicos?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "¿Se puede comprar esta parte a proveedores externos?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "¿Se puede vender esta parte a los clientes?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "¿Está activa esta parte?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Las partes bloqueadas no pueden ser editadas"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Suma de verificación de BOM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Suma de verificación de BOM almacenada"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "BOM comprobado por"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Fecha BOM comprobada"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Creación de Usuario"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Dueño responsable de esta parte"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Vender múltiples"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Moneda utilizada para almacenar en caché los cálculos de precios"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Costo mínimo de BOM"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Costo mínimo de partes de componentes"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Costo máximo de BOM"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Costo máximo de partes de componentes"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Costo mínimo de compra"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Costo histórico mínimo de compra"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Costo máximo de compra"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Costo histórico máximo de compra"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Precio interno mínimo"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Costo mínimo basado en precios reducidos internos"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Precio interno máximo"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Costo máximo basado en precios reducidos internos"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Precio mínimo de proveedor"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Precio mínimo de la parte de proveedores externos"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Precio máximo de proveedor"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Precio máximo de la parte de proveedores externos"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Costo mínimo de variante"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Costo mínimo calculado de las partes variantes"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Costo máximo de variante"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Costo máximo calculado de las partes variantes"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Costo mínimo"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Anular el costo mínimo"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Costo máximo"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Reemplazar coste máximo"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Costo mínimo general calculado"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Precio de venta mínimo"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Precio de venta mínimo basado en precios reducidos"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Precio de venta máximo"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Precio de venta máximo basado en precios reducidos"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Costo de venta mínimo"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Precio de venta mínimo histórico"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Costo de Venta Máximo"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Precio de venta máximo histórico"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Número de artículos"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Fecha"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Costo de Stock Mínimo"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Costo mínimo estimado del stock disponible"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Las plantillas de prueba solo pueden ser creadas para partes de prueba"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Nombre de prueba"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Introduzca un nombre para la prueba"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Descripción de prueba"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Introduce la descripción para esta prueba"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Requerido"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "¿Es necesario pasar esta prueba?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Requiere valor"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Adjunto obligatorio"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Seleccionar parte principal"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sub parte"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Seleccionar parte a utilizar en BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Cantidad del artículo en BOM"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Este artículo BOM es opcional"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Este artículo de BOM es consumible (no está rastreado en órdenes de construcción)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Referencia de artículo de BOM"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Notas del artículo de BOM"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Suma de verificación"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Suma de verificación de línea de BOM"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Validado"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Este artículo de BOM ha sido validado"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Este artículo BOM es heredado por BOMs para partes variantes"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "La cantidad debe ser un valor entero para las partes rastreables"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Debe especificar la subparte"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Ítem de BOM sustituto"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "La parte sustituta no puede ser la misma que la parte principal"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Artículo BOM superior"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Sustituir parte"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Parte 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Parte 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Seleccionar parte relacionada"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Nota para esta relación"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Nombre de categoría"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "En construcción"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Elementos de stock"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Proveedores"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Inventario Total"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Duplicar Parte"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Stock Inicial"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Crear Parte con cantidad inicial de stock"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Información del proveedor"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Añadir información inicial del proveedor para esta parte"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Copiar Parámetros de Categoría"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Copiar plantillas de parámetro de la categoría de partes seleccionada"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Imagen Existente"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "El archivo de imagen no existe"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Validación de Lista de Materiales"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Puede construir"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Precio mínimo"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Anular el valor calculado para precio mínimo"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Precio mínimo de moneda"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Precio máximo"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Precio máximo de moneda"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Actualizar"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "El precio mínimo no debe ser mayor que el precio máximo"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "El precio máximo no debe ser inferior al precio mínimo"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Seleccionar parte de la que copiar BOM"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Eliminar Datos Existentes"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Eliminar artículos BOM existentes antes de copiar"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Incluye Heredado"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Incluye artículos BOM que son heredados de partes con plantillas"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Omitir filas no válidas"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Activar esta opción para omitir filas inválidas"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Copiar partes sustitutas"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "No se especificó ninguna acción"
msgid "No matching action found"
msgstr "No se encontró ninguna acción coincidente"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "No se encontró ninguna coincidencia para los datos del código de barras"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Coincidencia encontrada para datos de códigos de barras"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "El código de barras coincide con artículo existente"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "No se ha encontrado ningún complemento para datos de código de barras"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Ningún complemento coincide con el código de barras del proveedor"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Ningún pedido de venta proporcionado"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Se encontró artículo coincidente"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "La pieza del proveedor no coincide con la partida"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "La partida ya está completada"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "No se pudo recibir partida"
@@ -6972,7 +6972,7 @@ msgstr "Proporciona soporte nativo para códigos de barras"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr "Total"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Número de serie"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Ubicación principal"
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Ubicación de Stock"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Ubicaciones de Stock"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Propietario"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Seleccionar Propietario"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Externo"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Se debe especificar la pieza"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "La cantidad debe ser 1 para el artículo con un número de serie"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Número de serie no se puede establecer si la cantidad es mayor que 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "El objeto no puede pertenecer a sí mismo"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "El artículo debe tener una referencia de construcción si is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "La referencia de la construcción no apunta al mismo objeto de parte"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Artículo de stock padre"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Parte base"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Seleccione una parte del proveedor correspondiente para este artículo de stock"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "¿Dónde se encuentra este artículo de stock?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Empaquetar este artículo de stock se almacena en"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Instalado en"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "¿Está este artículo instalado en otro artículo?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Número de serie para este artículo"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Código de lote para este artículo de stock"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Cantidad de Stock"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Build de origen"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Build para este item de stock"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Consumido por"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Orden de compra de origen"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Orden de compra para este artículo de stock"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Orden de venta de destino"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Fecha de caducidad del artículo de stock. El stock se considerará caducado después de esta fecha"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Eliminar al agotar"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Eliminar este artículo de stock cuando se agoten las existencias"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Precio de compra único en el momento de la compra"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Convertido a parte"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "La parte no está establecida como rastreable"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Cantidad debe ser un entero"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Los números de serie deben ser proporcionados como una lista"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "La cantidad no coincide con los números de serie"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Artículo de stock ha sido asignado a un pedido de venta"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Artículo de stock está instalado en otro artículo"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Artículo de stock contiene otros artículos"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Artículo de stock ha sido asignado a un cliente"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "El artículo de stock está en producción"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Stock serializado no puede ser combinado"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Artículos de Stock Duplicados"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Los artículos de stock deben referirse a la misma parte"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Los artículos de stock deben referirse a la misma parte del proveedor"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Los códigos de estado del stock deben coincidir"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Stock no se puede mover porque no está en stock"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Notas de entrada"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Debe proporcionarse un valor para esta prueba"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "El archivo adjunto debe ser subido para esta prueba"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Resultado de la prueba"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Valor de salida de prueba"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Adjunto de resultados de prueba"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Notas de prueba"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Finalizó"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Elemento padre"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Introduzca números de serie para nuevos artículos"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Número de pieza del proveedor"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "La cantidad no debe exceder la cantidad disponible de stock ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Ubicación de stock de destino"
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sub-ubicación"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "La parte debe ser vendible"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "El artículo está asignado a una orden de venta"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "El artículo está asignado a una orden de creación"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Cliente para asignar artículos de stock"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "La empresa seleccionada no es un cliente"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Notas de asignación de stock"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Debe proporcionarse una lista de artículos de stock"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Notas de fusión de stock"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Permitir proveedores no coincidentes"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Permitir fusionar artículos de stock con diferentes partes de proveedor"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Permitir estado no coincidente"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Permitir fusionar artículos de stock con diferentes códigos de estado"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Debe proporcionar al menos dos artículos de stock"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Sin cambios"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Valor de clave primaria de Stock"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "No hay existencias del artículo"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Notas de transacción de stock"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Órdenes de venta"
msgid "Return Orders"
msgstr "Ordenes de devolución"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nombre de usuario"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Nombre"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Nombre del usuario"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Apellido"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Apellido del usuario"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Dirección de correo del usuario"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personal"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Tiene este usuario permisos de personal"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superusuario"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Es este usuario un superusuario"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Esta cuenta de usuario está activa"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Su cuenta ha sido creada."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Por favor, utilice la función de restablecer la contraseña para iniciar sesión"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Bienvenido a InvenTree"
diff --git a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po
index 043c90256e..9c2328f9de 100644
--- a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:37\n"
"Last-Translator: \n"
"Language-Team: Estonian\n"
"Language: et_EE\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr ""
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Teil ei ole selle lehe vaatamiseks luba"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr ""
@@ -112,13 +112,13 @@ msgstr "Pane kuupäev"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Märkmed"
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Ühenduse viga"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Esines tõrge"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-post"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Vigane valik"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nimi"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Kirjeldus"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Kirjeldus (valikuline)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Tee"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serveri viga"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Pilt"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Osa"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Valikuline"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Jälgitud"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Saadaval"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Asukoht"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr "Koostamise olek"
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Loomise kuupäev"
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "Kogus"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Osa nimi"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Tühista kõik laoseisu eraldised mahakantud väljundite jaoks"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Valikained"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Jälgitav"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Saadaval laos"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "On link"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "On fail"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr "Pluginat pole"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Uuendatud"
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Seade võti"
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "ID"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Pealkiri"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Link"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Avaldatud"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Kokkuvõte"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Loetud"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Pildifail"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Ühiku nimi"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Sümbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definitsioon"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Ühiku definitsioon"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Manus"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Puuduv fail"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Puuduv väline link"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Vali fail, mida lisada"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Kommentaar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Faili suurus"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Silt"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Loodud"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Mall"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Andmed"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr "Märkus"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Vöötkoodi andmed"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontekst"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Vastus"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Tulemus"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Võti"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Ülesande nimi"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funktsioon"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Funktsiooni nimi"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumendid"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Ülesande argumendid"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Failinimi"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Mudeli liik"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Grupp puudub"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Taaskäivitamine on vajalik"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Ettevõtte nimi"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "päeva"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automaatne varundus"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Vöötkoodi tugi"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponent"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Ostetav"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuaalne"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Lehe suurus"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Luba liidese integreerimine"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Luba pluginatel integreeruda kasutajaliidesesse"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Tootja"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Ettevõte"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Laos"
@@ -3969,7 +3977,7 @@ msgstr "Kontakttelefoni number"
msgid "Contact email address"
msgstr "Kontakt e-postiaadress"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Aadress"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Aadressid"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Vali ettevõte"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Peamine aadress"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Määra peamine aadress"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Rida 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Aadressi rida 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Rida 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Aadressi rida 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Postiindeks"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Linn/Piirkond"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Riik"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Tarnija"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Vali tarnija"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Staatus"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Saadetis"
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "Tellimuse ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "Kopeeritava tellimuse ID"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Kopeeri read"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Kopeeri reaüksused algsest tellimusest"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Kopeeri lisareaüksused algsest tellimusest"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Määrake selle tellimuse dubleerimise valikud"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Vale tellimuse ID"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Tootekood"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Vöötkood"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Skännitud ribakood"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Saadetised"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Järgmised seerianumbrid ei ole saadaval"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Osa kategooria"
@@ -5656,7 +5660,7 @@ msgstr "Osa kategooria"
msgid "Part Categories"
msgstr "Osa kategooriad"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ikoon"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ikoon (valikuline)"
@@ -5693,655 +5697,655 @@ msgstr "Ikoon (valikuline)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Osad"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Osa nimi"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "On mall"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Märksõnad"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Osa kategooria"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimaalne laoseis"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Testimalle saab luua ainult testitavate osade jaoks"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Kategooria nimi"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Ehitamine"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Tarnijad"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Tarnija info"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Minimaalne hind"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Maksimaalne hind"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Uuenda"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Valikud"
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Seerianumber"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Testitulemused"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Tarnija osa number"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Kasutajanimi"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Eesnimi"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Perekonnanimi"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po
index 3c7bed40bc..c8d4d7e581 100644
--- a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Persian\n"
"Language: fa_IR\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Address e API peida nashod"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "لیست اقلام یا فیلترها باید برای عملیات انبوه ارائه شود"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "موارد باید به صورت لیست ارائه شود"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "لیست موارد نامعتبر ارائه شده است"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "فیلترها باید به صورت دستوری ارائه شوند"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "فیلترهای نامعتبر ارائه شده است"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "تمامی فیلترها باید منحصراً با مقدار true مورد استفاده قرار گیرند"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "هیچ موردی با معیارهای ارائه شده مطابقت ندارد"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "کاربر سطح دسترسی نمایش این مدل را ندارد"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "نمیتوان {original} را به {unit} تبدیل کرد"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "مقدار ارائه شده نامعتبر است"
@@ -112,13 +112,13 @@ msgstr "تاریخ را وارد کنید"
msgid "Invalid decimal value"
msgstr "مقدار اعشاری نامعتبر است"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "یادداشت"
@@ -171,35 +171,35 @@ msgstr "برچسب های HTML را از این مقدار حذف کنید"
msgid "Data contains prohibited markdown content"
msgstr "داده ها حاوی محتوای علامت گذاری ممنوع است"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "خطا در اتصال"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "سرور با کد وضعیت نامعتبر پاسخ داد"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "یک استثنا رخ داده است"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "سرور با مقدار طول محتوا نامعتبر پاسخ داد"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "اندازه عکس بسیار بزرگ است"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "حجم دانلود تصویر از حداکثر اندازه بیشتر شده است"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "سرور ریموت پاسخ خالی را برگرداند"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "URL ارائه شده یک فایل تصویری معتبر نیست"
@@ -207,11 +207,11 @@ msgstr "URL ارائه شده یک فایل تصویری معتبر نیست"
msgid "Log in to the app"
msgstr "وارد برنامه شوید"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "ایمیل"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "قبل از انجام هر کار دیگری باید احراز هویت دو مرحله ای را فعال کنید."
@@ -255,133 +255,133 @@ msgstr "مرجع باید با الگوی مورد نیاز مطابقت داش
msgid "Reference number is too large"
msgstr "شماره مرجع خیلی بزرگ است"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "انتخاب نامعتبر"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "نام"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "توضیحات"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "توضیحات (اختیاری)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "مسیر"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "نامهای تکراری نمیتوانند تحت یک والد وجود داشته باشند"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "یادداشت های علامت گذاری (اختیاری)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "داده های بارکد"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "داده های بارکد شخص ثالث"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "هش بارکد"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "هش منحصر به فرد داده های بارکد"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "بارکد موجود پیدا شد"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "شکست کار"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "پس از {n} تلاش، کار پس زمینه '{f}' ناموفق بود"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "خطای سرور"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "یک خطا توسط سرور ثبت شده است."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "باید یک عدد معتبر باشد"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "ارز"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "ارز را از گزینه های موجود انتخاب کنید"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "مقدار نامعتبر"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "تصویر ریموت"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "آدرس فایل تصویری از راه دور"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "دانلود تصاویر از URL ریموت فعال نیست"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "دانلود تصویر از URL ریموت انجام نشد"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "واحد فیزیکی نامعتبر"
msgid "Not a valid currency code"
msgstr "کد ارز معتبر"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "وضعیت سفارش"
@@ -562,21 +562,21 @@ msgstr "وضعیت سفارش"
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "قطعه"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "دسته"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "مصرفی"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "اختیاری"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "مونتاژ"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "سفارش معوق"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "اختصاص داده شده"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "در دسترس"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "سفارش ساخت"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "مکان"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "مرجع سفارش فروش"
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "منبع محل"
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "تاریخ تکمیل"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "کاربری که این سفارش ساخت را صادر کرده است"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "پیوند خارجی"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "هیچ عملیات کاربر-محوری، مشخص نشده است"
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po
index 86a703b70e..ec7394f934 100644
--- a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Finnish\n"
"Language: fi_FI\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API-rajapintaa ei löydy"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Käyttäjän oikeudet eivät riitä kohteen tarkastelemiseen"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Annettu määrä on virheellinen"
@@ -112,13 +112,13 @@ msgstr "Anna päivämäärä"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Merkinnät"
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Yhteysvirhe"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Palvelin vastasi virheellisellä tilakoodilla"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Kuva on liian iso"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Kuvan lataus ylitti enimmäiskoon"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Etäpalvelin palautti tyhjän vastauksen"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Annettu URL ei ole kelvollinen kuvatiedosto"
@@ -207,11 +207,11 @@ msgstr "Annettu URL ei ole kelvollinen kuvatiedosto"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Sähköposti"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr "Viitenumero on liian suuri"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Virheellinen valinta"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nimi"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Kuvaus"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Kuvaus (valinnainen)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Polku"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Viivakoodin Tiedot"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Palvelinvirhe"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Kuva"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Täytyy olla kelvollinen luku"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuutta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Valitse valuutta käytettävissä olevista vaihtoehdoista"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Virheellinen arvo"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "Kuvatiedoston URL"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Kuvien lataaminen ei ole käytössä"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Osa"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategoria"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Saatavilla"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Sijainti"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Ulkoinen linkki"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Linkki ulkoiseen URLiin"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "Määrä"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Varastotuote"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Sarjanumerot"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Ei sallittu"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Seurattavissa"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Päivitetty"
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Käyttäjä"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Hinta"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktiivinen"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Salaisuus"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Isäntä"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Otsikko"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Linkki"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Julkaistu"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Julkaisija"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Yhteenveto"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Kuvatiedosto"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Liite"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Puuttuva tiedosto"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Puuttuva ulkoinen linkki"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Valitse liitettävä tiedosto"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Kommentti"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Arvo"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Käytössä"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr "Muistiinpano"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Avain"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Tiedostonimi"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Ei ryhmää"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Uudelleenkäynnistys vaaditaan"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Yrityksen nimi"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Yrityksen sisäinen nimi"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Oletusvaluutta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "päivää"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automaattinen varmuuskopionti"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Ota käyttöön tietokannan ja mediatiedostojen automaattinen varmuuskopiointi"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Automaattisen varmuuskopioinnin aikaväli"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Viivakoodituki"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponentti"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Ostettavissa"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Sisäiset hinnat"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Sisäisen hinnan ohitus"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Sivun koko"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Salli salasananpalautus"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Salli rekisteröinti"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Salli SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Salli SSO kirjautumissivuilla"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Salli SSO rekisteröinti"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Sähköposti vaaditaan"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Sähköpostiosoite kahdesti"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Salasana kahdesti"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Sallitut verkkotunnukset"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Pakota MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Valmistaja"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Yritys"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakti"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Osoite"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Valitse valmistaja"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Valmistajan osanumero"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Toimittaja"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Valitse toimittaja"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Toimittajan varastonimike"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Valitse valmistajan osa"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Valmis"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Hinta yhteensä"
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Tilauksen valuutta"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Tilauksen viite"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Tila"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Asiakas"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Asiakkaan viite "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Vastaanotettu"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Viivakoodi"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr "Oletus avainsanat"
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Kuvake"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Kuvake (valinnainen)"
@@ -5693,655 +5697,655 @@ msgstr "Kuvake (valinnainen)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Avainsanat"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Päivämäärä"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Sarjanumero"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Käyttäjätunnus"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Etunimi"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Sukunimi"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po
index 4b7148c271..0d929ec2d1 100644
--- a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Language: fr_FR\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Point de terminaison de l'API introuvable"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Liste des éléments ou des filtres à fournir pour les opérations en vrac"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Les éléments doivent être fournis sous forme de liste"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Liste d'éléments non valide fournie"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Les filtres doivent être fournis sous forme de dictionnaire"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Filtres fournis invalides"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Tous les filtres ne doivent être utilisés qu'avec \"true\""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Aucun élément ne correspond aux critères fournis"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Aucune donnée disponible"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "L'utilisateur n'a pas la permission de voir ce modèle"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Impossible de convertir {original} en {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Quantité fournie invalide"
@@ -112,13 +112,13 @@ msgstr "Entrer la date"
msgid "Invalid decimal value"
msgstr "Valeur décimale invalide"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Notes"
@@ -171,35 +171,35 @@ msgstr "Retirer les balises HTML de cette valeur"
msgid "Data contains prohibited markdown content"
msgstr "Les données contiennent du contenu markdown interdit"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Erreur de connexion"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Le serveur a répondu avec un code de statut invalide"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Une erreur est survenue"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Le serveur a répondu avec une valeur de longueur de contenu invalide"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Image trop volumineuse"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "La taille de l'image dépasse la taille maximale autorisée"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Le serveur distant a renvoyé une réponse vide"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "L'URL fournie n'est pas un fichier image valide"
@@ -207,11 +207,11 @@ msgstr "L'URL fournie n'est pas un fichier image valide"
msgid "Log in to the app"
msgstr "Se connecter à l'application"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Vous devez activer l'authentification à deux facteurs avant toute autre chose."
@@ -255,133 +255,133 @@ msgstr "La référence doit correspondre au modèle requis"
msgid "Reference number is too large"
msgstr "Le numéro de référence est trop grand"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Choix invalide"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nom"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Description"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Description (facultative)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Chemin d'accès"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Les noms dupliqués ne peuvent pas exister sous le même parent"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Notes Markdown (option)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Données du code-barres"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Données de code-barres tierces"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash du code-barre"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hachage unique des données du code-barres"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Code-barres existant trouvé"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Échec de la tâche"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "La tâche de travail en arrière-plan '{f}' a échoué après {n} tentatives"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Erreur serveur"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Une erreur a été loguée par le serveur."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Image"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Doit être un nombre valide"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Devise"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Sélectionnez la devise à partir des options disponibles"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Valeur non valide"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Images distantes"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL du fichier image distant"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Le téléchargement des images depuis une URL distante n'est pas activé"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Échec du téléchargement de l'image à partir de l'URL distant"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Unité invalide"
msgid "Not a valid currency code"
msgstr "Code de devise invalide"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Statut de la commande"
@@ -562,21 +562,21 @@ msgstr "Statut de la commande"
msgid "Parent Build"
msgstr "Fabrication parente"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Inclure les variantes"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Inclure les variantes"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Inclure les variantes"
msgid "Part"
msgstr "Pièce"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Catégorie"
@@ -666,80 +666,80 @@ msgstr "Date maximale"
msgid "Exclude Tree"
msgstr "Exclure l'arbre"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "La construction doit être annulée avant de pouvoir être supprimée"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Consommable"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Facultatif"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Assemblage"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Suivi"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testable"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Commande en cours"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Allouée"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Consommé"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Disponible"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "En Commande"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Ordre de Fabrication"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Emplacement"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Sortie"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "La date cible doit être postérieure à la date de début"
msgid "Build Order Reference"
msgstr "Référence de l' Ordre de Fabrication"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,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:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Emplacement d'origine"
@@ -857,17 +857,17 @@ msgstr "État de la construction"
msgid "Build status code"
msgstr "Code de statut de construction"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Code de lot"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Code de lot pour ce build output"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Date de création"
@@ -887,7 +887,7 @@ msgstr "Date d'achèvement cible"
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:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Date d'achèvement"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Utilisateur ayant émis cette commande de construction"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Responsable"
@@ -913,12 +913,12 @@ msgstr "Responsable"
msgid "User or group responsible for this build order"
msgstr "Utilisateur ou groupe responsable de cet ordre de construction"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Lien Externe"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Lien vers une url externe"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Priorité de cet ordre de fabrication"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Code du projet"
@@ -960,7 +960,7 @@ msgstr "La commande de construction {build} a été effectuée"
msgid "A build order has been completed"
msgstr "Une commande de construction a été effectuée"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Les numéros de série doivent être fournis pour les pièces traçables"
@@ -976,23 +976,23 @@ 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:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "La quantité doit être supérieure à zéro"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "La quantité ne peut pas être supérieure à la quantité de sortie"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "Les sorties de fabrication n'ont pas passé tous les tests requis"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "La sortie de compilation {serial} n'a pas réussi tous les tests requis"
@@ -1001,18 +1001,18 @@ msgstr "La sortie de compilation {serial} n'a pas réussi tous les tests requis"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Poste de l'ordre de construction"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Création de l'objet"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Création de l'objet"
msgid "Quantity"
msgstr "Quantité"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Quantité requise pour la commande de construction"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Quantité de stock consommé"
-#: build/models.py:1773
+#: build/models.py:1771
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:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "L'article de stock sélectionné ne correspond pas à la ligne BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La quantité doit être de 1 pour stock sérialisé"
+
+#: build/models.py:1869
#, 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:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "L'article de stock est suralloué"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "La quantité allouée doit être supérieure à zéro"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La quantité doit être de 1 pour stock sérialisé"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "L'article de stock sélectionné ne correspond pas à la ligne BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "La quantité allouée dépasse la quantité disponible dans le stock"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Article en stock"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Stock d'origine de l'article"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Quantité de stock à allouer à la construction"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Installer dans"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Stock de destination de l'article"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Niveau de construction"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nom de l'article"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Code du projet Étiquette"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Sortie d'assemblage"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "L'ordre de production ne correspond pas à l'ordre parent"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "La pièce en sortie ne correspond pas à la pièce de l'ordre de construction"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Cet ordre de production a déjà été produit"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Cet ordre de production n'est pas complètement attribué"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Entrer la quantité désiré pour la fabrication"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Quantité entière requise pour les pièces à suivre"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantité entière requise, car la facture de matériaux contient des pièces à puce"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Numéros de série"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Entrer les numéros de séries pour la fabrication"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Emplacement de stock pour la sortie de la fabrication"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Allouer automatiquement les numéros de série"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Affecter automatiquement les éléments requis avec les numéros de série correspondants"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Les numéros de série suivants existent déjà, ou sont invalides"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Une liste d'ordre de production doit être fourni"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Emplacement du stock pour les sorties épuisées"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Ignorer les allocations"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Abandonner les allocations de stock pour les sorties abandonnées"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Motif de l'élimination des produits de construction(s)"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Emplacement des ordres de production achevés"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Accepter l'allocation incomplète"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Compléter les sorties si le stock n'a pas été entièrement alloué"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Consommation du stock alloué"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Consommer tout stock qui a déjà été alloué à cette construction"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Retirer les sorties incomplètes"
-#: build/serializers.py:718
+#: build/serializers.py:700
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:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Non permis"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Accepter comme consommé par cet ordre de construction"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Désaffecter avant de terminer cette commande de fabrication"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Stock suralloué"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Comment voulez-vous gérer les articles en stock supplémentaires assignés à l'ordre de construction"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Certains articles de stock ont été suralloués"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Accepter les non-alloués"
-#: build/serializers.py:795
+#: build/serializers.py:777
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:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Le stock requis n'a pas encore été totalement alloué"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Accepter les incomplèts"
-#: build/serializers.py:813
+#: build/serializers.py:795
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:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "La quantité nécessaire n'a pas encore été complétée"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "L'ordre de construction a des ordres de construction enfants ouverts"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "L'ordre de construction doit être en état de production"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "L'ordre de production a des sorties incomplètes"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Chaîne d'assemblage"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Sortie d'assemblage"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "La sortie de la construction doit pointer vers la même construction"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Élément de la ligne de construction"
-#: build/serializers.py:946
+#: build/serializers.py:928
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:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "L'article doit être en stock"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantité disponible ({q}) dépassée"
-#: build/serializers.py:1011
+#: build/serializers.py:993
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 suivies"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "La sortie de la construction ne peut pas être spécifiée pour l'allocation des pièces non suivies"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Les articles d'allocation doivent être fournis"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
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 (laissez vide pour les prendre à partir de n'importe quel emplacement)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Emplacements exclus"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Exclure les articles de stock de cet emplacement sélectionné"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Stock interchangeable"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Les articles de stock à plusieurs emplacements peuvent être utilisés de manière interchangeable"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Stock de substitution"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Autoriser l'allocation de pièces de remplacement"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Objets Optionnels"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Affecter des éléments de nomenclature facultatifs à l'ordre de fabrication"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Échec du démarrage de la tâche d'auto-allocation"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Référence de la nomenclature"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID de la pièce de la nomenclature"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Nomenclature Nom de la pièce"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Construire"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Pièce fournisseur"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Quantité allouée"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Référence de construction"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Nom de la catégorie de pièces"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Traçable"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Reçu de quelqu'un"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Autoriser les variantes"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Article du BOM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "En Production"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Planifié pour fabrication"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Stock externe"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Stock disponible"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Stock de substitution disponible"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Stock de variantes disponibles"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "La quantité consommée dépasse la quantité allouée"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Note optionnelle pour la consommation du stock"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "L'article fabriqué doit pointer vers l'ordre de fabrication correct"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Dupliquer l'allocation de l'article de fabrication"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "L'article fabriqué doit pointer vers l'ordre de fabrication correct"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Dupliquer l'allocation de ligne de fabrication"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Au moins un élément ou une ligne doit être fourni"
@@ -1498,19 +1490,19 @@ msgstr "Ordre de commande en retard"
msgid "Build order {bo} is now overdue"
msgstr "L'ordre de commande {bo} est maintenant en retard"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "C'est un lien"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "C'est un fichier"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "L'utilisateur n'a pas les permissions de supprimer cette pièce jointe"
@@ -1530,7 +1522,11 @@ msgstr "Aucun code de devise valide fourni"
msgid "No plugin"
msgstr "Pas de plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Code du projet Étiquette"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Mise à jour"
@@ -1558,7 +1554,7 @@ msgstr "Description du projet"
msgid "User or group responsible for this project"
msgstr "Utilisateur ou groupe responsable de ce projet"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Paramétrés des touches"
@@ -1590,550 +1586,550 @@ msgstr "La valeur ne passe pas les contrôles de validation"
msgid "Key string must be unique"
msgstr "La chaîne de caractères constituant la clé doit être unique"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Utilisateur"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Quantité de rupture de prix"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Prix"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Prix unitaire à la quantité spécifiée"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Point final"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Point de terminaison auquel ce webhook est reçu"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Nom de ce webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Actif"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Ce webhook (lien de rappel HTTP) est-il actif"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Jeton"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Jeton d'accès"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Confidentiel"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Secret partagé pour HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID message"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Identifiant unique pour ce message"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Hôte"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Hôte à partir duquel ce message a été reçu"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Entête"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "En-tête de ce message"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Corps"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Corps de ce message"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Endpoint à partir duquel ce message a été reçu"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Travaillé sur"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Le travail sur ce message est-il terminé ?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Titre"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Lien"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Publié"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Auteur"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Résumé"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Lu"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Cette nouvelle a-t-elle été lue ?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Fichier image"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Type de modèle cible pour cette image"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "ID du modèle cible pour cette image"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Unité personnalisée"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Le symbole de l'unité doit être unique"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Le nom de l'unité doit être un identifiant valide"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nom de l'unité"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbole"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Symbole d'unité facultatif"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Définition"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Définition de l'unité"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Pièce jointe"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Fichier manquant"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Lien externe manquant"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Type de modèle"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Type de modèle cible pour l'image"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Sélectionnez un fichier à joindre"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Commentaire"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Commentaire sur la pièce jointe"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Date de téléchargement"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Date de téléchargement du fichier"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Taille du fichier"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Taille du fichier en octets"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Type de modèle non valide spécifié pour la pièce jointe"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "État personnalisé"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "États membres de l'Union européenne"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Ensemble d'états de référence"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Ensemble d'états étendu à cet état personnalisé"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Clé logique"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Clé logique de l'état qui est égale à cet état personnalisé dans la logique métier"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Valeur"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Valeur numérique qui sera enregistrée dans la base de données des modèles"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Nom de l'Etat"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Étiquette"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etiquette qui sera affichée dans le frontend"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Couleur"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Couleur qui sera affichée dans le frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modèle"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Modèle cet état est associé à"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Le modèle doit être sélectionné"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "La clé doit être sélectionnée"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "La clé logique doit être sélectionnée"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "La clé doit être différente de la clé logique"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Une classe de statut de référence valide doit être fournie"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "La clé doit être différente des clés logiques de l'état de référence"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "La clé logique doit se trouver dans les clés logiques de l'état de référence"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Le nom doit être différent des noms des statuts de référence"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Liste de sélection"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Listes de sélection"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Nom de la liste de sélection"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Description de la liste de sélection"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Verrouillé"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Cette liste de sélection est-elle verrouillée ?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Cette liste de sélection peut-elle être utilisée ?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Plug-in source"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Plugin qui fournit la liste de sélection"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Chaîne source"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Chaîne facultative identifiant la source utilisée pour cette liste"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Entrée par défaut"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Entrée par défaut pour cette liste de sélection"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Créé le"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Date et heure de création de la liste de sélection"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Dernière mise à jour"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Date et heure de la dernière mise à jour de la liste de sélection"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Entrée de la liste de sélection"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Entrées de la liste de sélection"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Liste de sélection à laquelle appartient cette entrée"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Valeur de l'entrée de la liste de sélection"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Étiquette pour l'entrée de la liste de sélection"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Description de l'entrée de la liste de sélection"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Cette entrée de la liste de sélection est-elle active ?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Modèle de paramètre"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Les paramètres des cases à cocher ne peuvent pas avoir d'unités"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Les paramètres des cases à cocher ne peuvent pas comporter de choix"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Les choix doivent être uniques"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Le nom du modèle de paramètre doit être unique"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Nom du paramètre"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Unités"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Unités physiques pour ce paramètre"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Description des paramètres"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Case à cocher"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Ce paramètre est-il une case à cocher ?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Choix"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Choix valables pour ce paramètre (séparés par des virgules)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Liste de sélection pour ce paramètre"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Activé"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Choix incorrect pour la valeur du paramètre"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Modèle"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Données"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Valeur du paramètre"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Valeur du paramètre"
msgid "Note"
msgstr "Note"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Champ de notes facultatif"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Analyse du code-barres"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Données du code-barres"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Utilisateur qui a scanné le code-barres"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Horodatage"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Date et heure du scan de code-barres"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Point d'accès à l'URL qui a traité le code-barres"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Contexte"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Données contextuelles pour la lecture du code-barres"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Réponse"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Données de réponse provenant de la lecture du code-barres"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Résultat"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "La lecture du code-barres a-t-elle réussi ?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Une erreur s'est produite"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8 : La suppression du journal d'e-mail est protégée. Définissez INVENTREE_PROTECT_EMAIL_LOG à False pour permettre la suppression."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "Message email"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "Messages email"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Annoncé"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Envoyé"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Échec"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Livré"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Confirmé"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Entrant"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Sortant"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Sans réponse"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Suivi de livraison"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Suivi de la lecture"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Suivi du clic"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "ID Global"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Identifiant pour ce message (peut être fourni par un système externe)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "ID du sujet de discussion"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Identifiant pour ce fil de message (peut être fourni par un système externe)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Fil de discussion"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Fil lié à ce message"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Fil d'Email"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Fils d'Emails"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Clé"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Clé unique pour ce fil (utilisée pour identifier le fil)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Identifiant unique pour ce fil"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Démarré en interne"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Est-ce que ce fil a été démarré en interne ?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Date et heure de création du fil"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Date et heure de dernière mise à jour du fil"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} annulé"
msgid "A order that is assigned to you was canceled"
msgstr "Une commande qui vous est assignée a été annulée"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Articles reçus"
@@ -2351,93 +2347,101 @@ msgstr "Des articles d'un bon de commande ont été reçus"
msgid "Items have been received against a return order"
msgstr "Les articles ont été reçus dans le cadre d'un ordre de retour"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Indique si le paramètre est écrasé par une variable d'environnement"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Écraser"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "En cours d'exécution"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Tâches en attente"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Tâches planifiées"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Tâches échouées"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID de la tâche"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "ID unique de la tâche"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Verrouillé"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Heure verrouillé"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nom de la tâche"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Fonction"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nom de la fonction"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Arguments"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Arguments tâche"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Mots-clés Arguments"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Mots-clés arguments tâche"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nom du fichier"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Type de modèle"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "L'utilisateur n'a pas le droit de créer ou de modifier des pièces jointes pour ce modèle"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "La liste de sélection est verrouillée"
@@ -2445,1128 +2449,1132 @@ msgstr "La liste de sélection est verrouillée"
msgid "No group"
msgstr "Pas de groupe"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "L'URL du site est verrouillée par configuration"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Redémarrage nécessaire"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Un paramètre a été modifié, ce qui nécessite un redémarrage du serveur"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migration en attente"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Nombre de migrations de base de données en attente"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Codes warning actifs"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Un dictionnaire de codes d'avertissement actifs"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "ID de l'instance"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Identifiant unique pour cette instance InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Annoncer l'ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Annoncer l'ID d'instance du serveur dans l'info sur l'état du serveur (non authentifié)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nom de l'instance du serveur"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Chaîne de caractères descriptive pour l'instance serveur"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Utiliser le nom de l'instance"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Utiliser le nom de l’instance dans la barre de titre"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Limiter l'affichage de `about`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Afficher la modale `about` uniquement aux super-utilisateurs"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nom de la société"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Nom de société interne"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL de base"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL de base pour l'instance serveur"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Devise par défaut"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Sélectionnez la devise de base pour les calculs de prix"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Devises supportées"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Liste des codes de devises supportés"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Intervalle de mise à jour des devises"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Fréquence de mise à jour des taux de change (définir à zéro pour désactiver)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "jours"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Plugin de mise à jour de devise"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Plugin de mise à jour des devises à utiliser"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Télécharger depuis l'URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Autoriser le téléchargement d'images distantes et de fichiers à partir d'URLs externes"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Limite du volume de téléchargement"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Taille maximale autorisée pour le téléchargement de l'image distante"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Agent utilisateur utilisé pour télécharger depuis l'URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Permettre de remplacer l'agent utilisateur utilisé pour télécharger des images et des fichiers à partir d'URL externe (laisser vide pour la valeur par défaut)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Validation stricte d'URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Spécification du schéma nécessaire lors de la validation des URL"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Intervalle de vérification des mises à jour"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "À quelle fréquence vérifier les mises à jour (définir à zéro pour désactiver)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Backup automatique"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Activer le backup automatique de la base de données et des fichiers médias"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervalle de sauvegarde automatique"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Spécifiez le nombre de jours entre les sauvegardes automatique"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Intervalle de suppression des tâches"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Les résultats de la tâche en arrière-plan seront supprimés après le nombre de jours spécifié"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Intervalle de suppression du journal d'erreur"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Les logs d'erreur seront supprimés après le nombre de jours spécifié"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Intervalle de suppression du journal de notification"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Les notifications de l'utilisateur seront supprimées après le nombre de jours spécifié"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Intervalle de suppression d'Email"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "Les Emails seront supprimés après le nombre de jours spécifié"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Protéger le log d'Email"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Empêcher la suppression des entrées du log d'email"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Support des code-barres"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Activer le support du scanner de codes-barres dans l'interface web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Résultats des codes-barres des magasins"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Stocker les résultats de la lecture du code-barres dans la base de données"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Scanners de codes-barres Comptage maximal"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Nombre maximum de résultats de lecture de codes-barres à stocker"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Délai d'entrée du code-barres"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Délai de traitement du code-barres"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Prise en charge de la webcam code-barres"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Autoriser la numérisation de codes-barres via la webcam dans le navigateur"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Code-barres Afficher les données"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Afficher les données du code-barres dans le navigateur sous forme de texte"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Plugin de génération de codes-barres"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Plugin à utiliser pour la génération interne de données de code-barres"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Modifications de la pièce"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Activer le champ de modification de la pièce"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Révision de l'assemblage uniquement"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "N'autoriser les révisions que pour les pièces d'assemblage"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Autoriser la suppression de l'Assemblée"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Permettre la suppression de pièces utilisées dans un assemblage"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Regex IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Expression régulière pour la correspondance avec l'IPN de la Pièce"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Autoriser les IPN dupliqués"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Permettre à plusieurs pièces de partager le même IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Autoriser l'édition de l'IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Permettre de modifier la valeur de l'IPN lors de l'édition d'une pièce"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Copier les données de la pièce"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Copier les données des paramètres par défaut lors de la duplication d'une pièce"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Copier les données des paramètres de la pièce"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copier les données des paramètres par défaut lors de la duplication d'une pièce"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Copier les données de test de la pièce"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Copier les données de test par défaut lors de la duplication d'une pièce"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Copier les templates de paramètres de catégorie"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
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/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Les pièces sont des templates par défaut"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Les pièces peuvent être assemblées à partir d'autres composants par défaut"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Composant"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Les pièces peuvent être utilisées comme sous-composants par défaut"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Achetable"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Les pièces sont achetables par défaut"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Vendable"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Les pièces sont vendables par défaut"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Les pièces sont traçables par défaut"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuelle"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Les pièces sont virtuelles par défaut"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Afficher les pièces connexes"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Afficher les pièces connexes à une pièce"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Stock initial"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permettre la création d'un stock initial lors de l'ajout d'une nouvelle pièce"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Données initiales du fournisseur"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Permettre la création des données initiales du fournisseur lors de l'ajout d'une nouvelle pièce"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Format d'affichage du nom de la pièce"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Format pour afficher le nom de la pièce"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Icône de catégorie par défaut"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Icône par défaut de la catégorie de la pièce (vide signifie aucune icône)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Nombre minimal de décimales"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Nombre minimum de décimales à afficher lors de l'affichage des prix"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Nombre maximal de décimales pour la tarification"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Nombre maximal de décimales à afficher lors du rendu des données de tarification"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Utiliser le prix fournisseur"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Inclure les réductions de prix dans le calcul du prix global"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Remplacer l'historique des achats"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "La tarification historique des bons de commande remplace les réductions de prix des fournisseurs"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Utiliser les prix des articles en stock"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Utiliser les prix des données de stock saisies manuellement pour calculer les prix"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Âge de tarification des articles de stock"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Exclure les articles en stock datant de plus de ce nombre de jours des calculs de prix"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Utiliser les prix variants"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Inclure la tarification variante dans le calcul global des prix"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Variantes actives uniquement"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "N'utiliser que des pièces de variante actives pour calculer le prix de la variante"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Mise à jour automatique des prix"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Mettre à jour automatiquement les prix des pièces quand les données internes changes"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervalle de regénération des prix"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Nombre de jours avant la mise à jour automatique du prix de la pièce"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Prix internes"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Activer les prix internes pour les pièces"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Substitution du prix interne"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Si disponible, les prix internes remplacent les calculs de la fourchette de prix"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Activer l'impression d'étiquettes"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Activer l'impression d'étiquettes depuis l'interface Web"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Étiquette image DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
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/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Activer les rapports"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Activer la génération de rapports"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Mode Débogage"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Générer des rapports en mode debug (sortie HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Journal des erreurs"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Enregistrer les erreurs qui se produisent lors de la génération de rapports"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Taille de la page"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Taille de page par défaut pour les rapports PDF"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Renforcer les unités des paramètres"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Si des unités sont fournies, les valeurs de paramètre doivent correspondre aux unités spécifiées"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Numéro de Série Universellement Unique"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Les numéros de série pour les articles en stock doivent être uniques au niveau global"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Supprimer le stock épuisé"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Détermine le comportement par défaut lorsqu'un article de stock est épuisé"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Modèle de code de lot"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
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/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Expiration du stock"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Activer la fonctionnalité d'expiration du stock"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Vendre le stock expiré"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Autoriser la vente de stock expiré"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Délai de péremption du stock"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Nombre de jours pendant lesquels les articles en stock sont considérés comme périmés avant d'expirer"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Construction de stock expirée"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Autoriser la construction avec un stock expiré"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Contrôle de la propriété des stocks"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Activer le contrôle de la propriété sur les emplacements de stock et les articles"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Icône par défaut de l'emplacement du stock"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Icône par défaut de l'emplacement du stock (vide signifie aucune icône)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Afficher les pièces en stock installées"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Affichage des articles en stock installés dans les tableaux de stock"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Vérifier la nomenclature lors de l'installation des articles"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Les articles de stock installés doivent exister dans la nomenclature de la pièce mère"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Autoriser le transfert des produits en rupture de stock"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Permettre le transfert d'articles qui ne sont pas en stock d'un magasin à l'autre"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Modèle de référence de commande de construction"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Modèle requis pour générer le champ de référence de l'ordre de construction"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Nécessite un Responsable propriétaire"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Un propriétaire responsable doit être assigné à chaque commande"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Exiger une partie active"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Empêcher la création d'un ordre de fabrication pour les pièces inactives"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Requiert une pièce verrouillée"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Empêcher la création d'un ordre de fabrication pour les pièces non verrouillées"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Exiger une nomenclature valide"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Empêcher la création d'un ordre de fabrication si la nomenclature n'a pas été validée"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Exiger des ordonnances fermées pour les enfants"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Empêcher l'achèvement de l'ordre de construction jusqu'à ce que tous les ordres d'enfants soient clôturés"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Ordres de fabrication externes"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Activer la fonctionnalité d'ordre de fabrication externe"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blocage jusqu'à la réussite des tests"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Empêcher l'achèvement des résultats de la construction jusqu'à ce que tous les tests requis soient réussis"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Activer les retours de commandes"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Activer la fonctionnalité de retour de commande dans l'interface utilisateur"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Modèle de référence de retour de commande"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Modèle requis pour générer le champ de référence de la commande de retour"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Modifier les retours de commandes terminées"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Autoriser la modification des retours après leur enregistrement"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Modèle de référence de bon de commande"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modèle requis pour générer le champ de référence du bon de commande"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Expédition par défaut du bon de commande"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Activer la création d'expédition par défaut avec les bons de commandes"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Modifier les commandes de vente terminées"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Autoriser la modification des commandes de vente après avoir été expédiées ou complétées"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Marquer les commandes expédiées comme achevées"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Les commandes marquées comme expédiées seront automatiquement complétées, en contournant le statut « expédié »"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Modèle de référence de commande d'achat"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modèle requis pour générer le champ de référence de bon de commande"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Modifier les bons de commande terminés"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Autoriser la modification des bons de commande après avoir été expédiés ou complétés"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Convertir la monnaie"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Convertir la valeur de l'article dans la devise de base lors de la réception du stock"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Achat automatique des commandes"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Marquer automatiquement les bons de commande comme terminés lorsque tous les articles de la ligne sont reçus"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Activer les mots de passe oubliés"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Activer la fonction \"Mot de passe oublié\" sur les pages de connexion"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Activer les inscriptions"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Activer l'auto-inscription pour les utilisateurs sur les pages de connexion"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Activer le SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Activer le SSO sur les pages de connexion"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Activer l'inscription SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Activer l'auto-inscription via SSO pour les utilisateurs sur les pages de connexion"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Activer la synchronisation du groupe SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Permettre la synchronisation des groupes InvenTree avec les groupes fournis par l'IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Clé du groupe SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Le nom de l'attribut de revendication de groupe fourni par l'IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Carte de groupe SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Une correspondance entre les groupes SSO et les groupes InvenTree locaux. Si le groupe local n'existe pas, il sera créé."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Supprimer les groupes en dehors de SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Indique si les groupes attribués à l'utilisateur doivent être supprimés s'ils ne sont pas gérés par l'IdP. La désactivation de ce paramètre peut entraîner des problèmes de sécurité"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email requis"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Exiger que l'utilisateur fournisse un mail lors de l'inscription"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Saisie automatique des utilisateurs SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Remplir automatiquement les détails de l'utilisateur à partir des données de compte SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Courriel en double"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mail"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Mot de passe deux fois"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mot de passe"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Domaines autorisés"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Restreindre l'inscription à certains domaines (séparés par des virgules, commençant par @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grouper sur inscription"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Groupe auquel les nouveaux utilisateurs sont assignés lors de l'enregistrement. Si la synchronisation des groupes SSO est activée, ce groupe n'est défini que si aucun groupe ne peut être attribué par l'IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Forcer l'authentification multifacteurs"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Les utilisateurs doivent utiliser l'authentification multifacteurs."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Vérifier les plugins au démarrage"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Vérifier que tous les plugins sont installés au démarrage - activer dans les environnements conteneurs"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Vérifier les mises à jour des plugins"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Activer les vérifications périodiques pour les mises à jour des plugins installés"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Activer l'intégration d'URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Autoriser les plugins à ajouter des chemins URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Activer l'intégration de navigation"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Activer les plugins à s'intégrer dans la navigation"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Activer l'intégration de plugins"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Activer l'intégration de plugin pour ajouter des apps"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Activer l'intégration du planning"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Autoriser les plugins à éxécuter des tâches planifiées"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Activer l'intégration des évènements"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Autoriser les plugins à répondre aux évènements internes"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Permettre l'intégration de l'interface"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Permettre aux plugins de s'intégrer dans l'interface utilisateur"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Activer l'intégration mail"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Autoriser les plugins à traiter les mails entrants/sortants"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Activer les codes de projet"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Activer les codes de projet pour le suivi des projets"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Activer l'historique du stock"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Activer la fonctionnalité d'enregistrement des historiques de niveaux de stock et de leur valeur"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Exclure les localisations externes"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Exclure les articles en stock externes des calculs d'historique"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Période de l'inventaire automatique"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Nombre de jours entre les enregistrements d'historique de stock"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Supprimer les vieilles entrées d'historique de stock"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Supprimer les entrées d'historique de stock plus vieilles que le nombre de jours spécifié"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Intervalle de suppression des historiques de stock"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Les entrées d'historique de stock seront supprimées après le nombre de jours spécifié"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Afficher les noms des utilisateurs"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Afficher les noms complets des utilisateurs au lieu des noms d'utilisateur"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Afficher les profils d'utilisateur"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Afficher les profils des utilisateurs sur leur page de profil"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Activer les données de station de test"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Activer la collecte des données de la station de test pour les résultats de test"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "La pièce est active"
msgid "Manufacturer is Active"
msgstr "Le fabricant est actif"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Le fournisseur de la pièce est active"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "La pièce interne est active"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Le fournisseur est actif"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Fabricant"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Société"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "A du stock"
@@ -3969,7 +3977,7 @@ msgstr "Numéro de téléphone de contact"
msgid "Contact email address"
msgstr "Adresse e-mail de contact"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contact"
@@ -4022,255 +4030,247 @@ msgstr "N° de TVA"
msgid "Company Tax ID"
msgstr "Numéro d'identification fiscale de l'entreprise"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adresse"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adresses"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Sélectionner une entreprise"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Intitulé de l'adresse"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Titre décrivant la saisie de l'adresse"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Adresse principale"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Sélectionner comme adresse principale"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Ligne 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adresse"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Ligne 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Seconde ligne d'adresse"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Code postal"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Ville / Région"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Code postal Ville / Région"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "État / Province"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "État ou province"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Pays"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Pays"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notes du livreur"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Instructions pour le livreur"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Notes pour la livraison interne"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Notes internes pour la livraison"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Lien vers les informations de l'adresse (externe)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Pièces du fabricant"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Pièce de base"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Sélectionner une partie"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Sélectionner un fabricant"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "Référence fabricant"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Référence du fabricant"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL pour le lien externe de la pièce du fabricant"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Description de la pièce du fabricant"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Les unités d'emballage doivent être compatibles avec les unités de base"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Les unités d'emballage doivent être supérieures à zéro"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "La pièce du fabricant liée doit faire référence à la même pièce de base"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Fournisseur"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Sélectionner un fournisseur"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Unité de gestion des stocks des fournisseurs"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Cette partie du fournisseur est-elle active ?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Sélectionner un fabricant"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "Lien de la pièce du fournisseur externe"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Description de la pièce du fournisseur"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "coût de base"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Frais minimums (par exemple frais de stock)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Conditionnement"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Conditionnement de l'article"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Nombre de paquet"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Quantité totale fournie dans un emballage unique. Laisser vide pour les articles individuels."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "plusieurs"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Commande multiple"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Quantité disponible auprès du fournisseur"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Disponibilité mise à jour"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Date de dernière mise à jour des données de disponibilité"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Rupture de prix pour le fournisseur"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Renvoie la représentation sous forme de chaîne de caractères de l'adresse principale. Cette propriété existe pour des raisons de compatibilité ascendante."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Devise par défaut utilisée pour ce fournisseur"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Nom de l'entreprise"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "En Stock"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Une erreur s'est produite lors de l'exportation des données"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Le plugin d'exportation de données renvoie un format de données incorrect"
@@ -4418,7 +4418,7 @@ msgstr "Données de la ligne d'origine"
msgid "Errors"
msgstr "Erreurs"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Valide"
@@ -4530,7 +4530,7 @@ msgstr "Nombre de copies à imprimer pour chaque étiquette"
msgid "Connected"
msgstr "Connecté"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Inconnu"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Référence de commande"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Remarquable"
@@ -4670,7 +4670,7 @@ msgstr "Remarquable"
msgid "Has Project Code"
msgstr "A le code du projet"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Créé par"
@@ -4710,11 +4710,11 @@ msgstr "Date cible Après"
msgid "Has Pricing"
msgstr "Possède un Tarif"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Terminé avant"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Terminé après"
@@ -4722,40 +4722,40 @@ msgstr "Terminé après"
msgid "External Build Order"
msgstr "Ordre de fabrication externe"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Commande"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Commande Complétée"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Pièces Internes"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Commande En Attente"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Terminé"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Fait l'objet d'une expédition"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Commande d’achat"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Commande d’achat"
msgid "Sales Order"
msgstr "Commandes"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Prix Total"
msgid "Total price for this order"
msgstr "Prix total pour cette commande"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Devise de la commande"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Devise de cette commande (laisser vide pour utiliser la devise par défaut de l'entreprise)"
@@ -4805,240 +4805,240 @@ msgstr "La date de début doit être antérieure à la date cible"
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Description de la commande (facultatif)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Sélectionner le code du projet pour cette commande"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Lien vers une page externe"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Date de début"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Date de début prévue pour cette commande"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Date Cible"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Date prévue pour la livraison de la commande. La commande sera en retard après cette date."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Date d'émission"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Date d'émission de la commande"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Utilisateur ou groupe responsable de cette commande"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Point de contact pour cette commande"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Adresse de l'entreprise pour cette commande"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Référence de la commande"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "État"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Statut de la commande d'achat"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Société de laquelle les articles sont commandés"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Référence du fournisseur"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Code de référence de la commande fournisseur"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "reçu par"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Date à laquelle la commande a été complété"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destination"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Destination des articles reçus"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Le fournisseur de la pièce doit correspondre au fournisseur de la commande"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Le poste ne correspond pas au bon de commande"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "Il manque une pièce liée à l'article de la ligne"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "La quantité doit être un nombre positif"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Client"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Société à laquelle les articles sont vendus"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Statut de la commande client"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Référence client "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Code de référence de la commande du client"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Nom de l’expédition"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "expédié par"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "La commande est déjà terminée"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "La commande est déjà annulée"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Seule une commande ouverte peut être marquée comme complète"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "La commande ne peut pas être terminée car il y a des envois incomplets"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "L'ordre ne peut pas être achevé car les allocations sont incomplètes"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "L'ordre ne peut pas être complété car il y a des postes incomplets"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "La commande est verrouillée et ne peut être modifiée"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Nombre d'élement"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Référence du poste"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Notes sur les postes"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Date cible pour ce poste (laisser vide pour utiliser la date cible de la commande)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Description du poste (facultatif)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Contexte supplémentaire pour cette ligne"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Prix unitaire"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Poste du bon de commande"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "La pièce du fournisseur doit correspondre à celle du fournisseur"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "L'ordre de fabrication doit être marqué externe"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Les ordres de fabrication ne peuvent être liées qu'à des pièces d'assemblage"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "Les pièces d'ordre de fabrication doivent correspondre la pièce d'objet"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Pièce fournisseur"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Reçu"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Nombre d'éléments reçus"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Prix d'achat"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Prix d'achat unitaire"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Ordre de fabrication externe à remplir par cet élément de ligne"
@@ -5102,8 +5102,8 @@ msgstr "Vérifié par"
msgid "User who checked this shipment"
msgstr "Utilisateur qui a vérifié cet envoi"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Envoi"
@@ -5164,7 +5164,11 @@ msgstr "Impossible d'allouer le stock à une ligne sans pièce"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La quantité d'allocation ne peut pas excéder la quantité en stock"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "La quantité allouée doit être supérieure à zéro"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "La quantité doit être égale à 1 pour un article de stock sérialisé"
@@ -5172,7 +5176,7 @@ msgstr "La quantité doit être égale à 1 pour un article de stock sérialisé
msgid "Sales order does not match shipment"
msgstr "La commande client ne correspond pas à l'expédition"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "L'envoi ne correspond pas à la commande client"
@@ -5256,247 +5260,247 @@ msgstr "Coût associé au retour ou à la réparation de ce poste"
msgid "Return Order Extra Line"
msgstr "Ordre de retour Ligne supplémentaire"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID de commande"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID de l'ordre à dupliquer"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Copier des lignes"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Copier les postes de l'ordre original"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Copier les lignes supplémentaires"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Copier les postes supplémentaires de l'ordre original"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Postes de travail"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Lignes achevées"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Duplicata de commande"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Spécifier les options de duplication de cette commande"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "ID de commande invalide"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Nom du fournisseur"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "La commande ne peut pas être annulée"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Permettre la clôture d'une commande avec des postes incomplets"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "La commande comporte des postes incomplets"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "La commande n'est pas ouverte"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Tarification automobile"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Calculer automatiquement le prix d'achat sur la base des données de pièces du fournisseur"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Devise du prix d'achat"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Fusionner des éléments"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Fusionner en un seul poste les éléments ayant la même partie, la même destination et la même date cible"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Unité de gestion des stocks"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Numéro de pièce interne"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Nom de la pièce interne"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "La pièce du fournisseur doit être spécifiée"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Le bon de commande doit être spécifié"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Le fournisseur doit correspondre au bon de commande"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Le bon de commande doit correspondre au fournisseur"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Poste"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Sélectionner le lieu de destination des envois reçus"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Saisir le code de lot pour les articles de stock entrant"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Date d'expiration"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Saisir la date d'expiration des articles de stock entrant"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Entrez les numéros de série pour les articles de stock entrants"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Remplacer les informations d'emballage pour les articles en stock entrants"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Note supplémentaire pour les articles en stock entrant"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Code-barres"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Code-barres scanné"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Le code-barres est déjà utilisé"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Les postes doivent être fournis"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "L'emplacement de la destination doit être spécifié"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Les valeurs de code-barres fournies doivent être uniques"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Envois"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Envois terminés"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Devise du prix de vente"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Postes alloués"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Aucun détail sur l'expédition n'est fourni"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Le poste n'est pas associé à cette commande"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "La quantité doit être positive"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Entrez les numéros de série à allouer"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "L'envoi a déjà été effectué"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "L'envoi n'est pas associé à cette commande"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Aucune correspondance trouvée pour les numéros de série suivants"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Les numéros de série suivants sont indisponibles"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Poste de commande de retour"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Le poste ne correspond pas à l'ordre de retour"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Le poste a déjà été reçu"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Les articles ne peuvent être reçus que pour des commandes en cours"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Quantité à retourner"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Devise du prix de la ligne"
@@ -5647,7 +5651,7 @@ msgstr "Le composant est testable"
msgid "Uses"
msgstr "Utilise"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Catégorie de composant"
@@ -5656,7 +5660,7 @@ msgstr "Catégorie de composant"
msgid "Part Categories"
msgstr "Catégories de composants"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Emplacement par défaut"
@@ -5664,7 +5668,7 @@ msgstr "Emplacement par défaut"
msgid "Default location for parts in this category"
msgstr "Emplacement par défaut des pièces de cette catégorie"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Structurel"
@@ -5680,12 +5684,12 @@ msgstr "Mots-clés par défaut"
msgid "Default keywords for parts in this category"
msgstr "Mots-clés par défaut pour les pièces de cette catégorie"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Icône"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Icône (facultatif)"
@@ -5693,655 +5697,655 @@ msgstr "Icône (facultatif)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Vous ne pouvez pas rendre cette catégorie de pièces structurelle car certaines pièces lui sont déjà affectées !"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Catégorie de pièce Modèle de paramètre"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Valeur par Défaut"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Valeur par défaut du paramètre"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Pièces"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Impossible de supprimer cette partie car elle est verrouillée"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Impossible de supprimer cette partie car elle est toujours active"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Impossible de supprimer cette pièce car elle est utilisée dans un assemblage"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "La partie \"{self}\" ne peut pas être utilisée dans la nomenclature de \"{parent}\" (récursif)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "La partie \"{parent}\" est utilisée dans la nomenclature de \"{self}\" (récursif)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "L'IPN doit correspondre au modèle de regex {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Une partie ne peut pas être une révision d'elle-même"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Impossible d'effectuer une révision d'une partie qui est déjà une révision"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Le code de révision doit être spécifié"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Les révisions ne sont autorisées que pour les pièces d'assemblage"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Impossible d'effectuer une révision d'un modèle de pièce"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "La partie parentale doit pointer vers le même modèle"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Il existe déjà un article en stock avec ce numéro de série"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "La révision de la pièce existe déjà en double."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Une pièce avec ce nom, IPN et révision existe déjà."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Les pièces ne peuvent pas être affectées à des catégories de pièces structurelles !"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nom de l'article"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Est un modèle"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Cette pièce est-elle une pièce modèle ?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Cette pièce est-elle une variante d'une autre pièce ?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variante de"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Description de la pièce (facultatif)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Mots-clés"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Les mots-clés partiels pour améliorer la visibilité dans les résultats de recherche"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Catégorie de la pièce"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Numéro de révision ou de version de la pièce"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Révision"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Cette partie est-elle une révision d'une autre partie ?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Révision de"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Où cet article est-il normalement stocké ?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Fournisseur par défaut"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Pièce du fournisseur par défaut"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Expiration par défaut"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Délai d'expiration (en jours) pour les articles en stock de cette pièce"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Stock Minimum"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Niveau de stock minimum autorisé"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Unités de mesure pour cette partie"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Cette pièce peut-elle être fabriquée à partir d'autres pièces ?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Cette pièce peut-elle être utilisée pour construire d'autres pièces ?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Cette partie dispose-t-elle d'un suivi pour les articles uniques ?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Des résultats de tests peuvent-ils être enregistrés pour cette pièce ?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Cette pièce peut-elle être achetée auprès de fournisseurs externes ?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Cette pièce peut-elle être vendue aux clients ?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Est-ce que cette pièce est active ?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Les parties verrouillées ne peuvent pas être modifiées"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "S'agit-il d'un élément virtuel, tel qu'un logiciel ou une licence ?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "Nomenclature validée"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Est-ce que la nomenclature pour cette pièce est correcte ?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Somme de contrôle de la nomenclature"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Somme de contrôle de la nomenclature enregistrée"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Nomenclature vérifiée par"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Date de vérification de la nomenclature"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Création Utilisateur"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Propriétaire responsable de cette pièce"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Ventes multiples"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Devise utilisée pour cacher les calculs de prix"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Coût minimum de la nomenclature"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Coût minimal des composants"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Coût maximal de la nomenclature"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Coût maximal des composants"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Coût d'achat minimum"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Coût d'achat historique minimum"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Coût d'achat maximum"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Coût d'achat historique maximum"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Prix interne minimum"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Coût minimum basé sur des ruptures de prix internes"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Prix interne maximum"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Coût maximum basé sur les écarts de prix internes"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Prix minimum du fournisseur"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Prix minimum des pièces provenant de fournisseurs externes"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Prix maximum du fournisseur"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Prix maximum des pièces provenant de fournisseurs externes"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Coût minimum de la variante"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Calcul du coût minimum des pièces de la variante"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Coût maximal de la variante"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Calcul du coût maximal des pièces de la variante"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Coût minimal"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Remplacer le coût minimum"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Coût maximal"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Dépassement du coût maximal"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Calcul du coût minimum global"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Calcul du coût maximum global"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Prix de vente minimum"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Prix de vente minimum basé sur des ruptures de prix"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Prix de vente maximum"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Prix de vente maximum en fonction des écarts de prix"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Coût minimum de vente"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Prix de vente historique minimum"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Coût de vente maximum"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Prix de vente historique maximum"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Partie pour l'inventaire"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Nombre d'articles"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Nombre d'entrées individuelles au moment de l'inventaire"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Stock total disponible au moment de l'inventaire"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Date"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Date de l'inventaire"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Coût minimum du stock"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Coût minimum estimé des stocks disponibles"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Coût maximal du stock"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Coût maximum estimé des stocks disponibles"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Vente de pièces détachées Prix cassé"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Modèle de test partiel"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Le nom du modèle n'est pas valide - il doit comporter au moins un caractère alphanumérique"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Les modèles de test ne peuvent être créés que pour les parties testables"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Un modèle de test avec la même clé existe déjà pour la partie"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Nom de test"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Entrez un nom pour le test"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Clé de test"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Clé simplifiée pour le test"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Description du test"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Saisir la description de ce test"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Ce test est-il activé ?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Requis"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Ce test est-il obligatoire pour passer l'examen ?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Valeur requise"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Ce test nécessite-t-il une valeur lors de l'ajout d'un résultat de test ?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Nécessite une pièce jointe"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Ce test nécessite-t-il un fichier joint lors de l'ajout d'un résultat de test ?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Choix valables pour ce test (séparés par des virgules)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "L'article de nomenclature ne peut pas être modifié - l'assemblage est verrouillé"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "Le poste de nomenclature ne peut pas être modifié - l'assemblage de la variante est verrouillé"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Sélectionner la partie parentale"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sous-partie"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Sélectionner la pièce à utiliser dans la nomenclature"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Quantité de nomenclature pour ce poste de nomenclature"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Ce poste de nomenclature est facultatif"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Ce poste de nomenclature est consommable (il n'est pas suivi dans les ordres de fabrication)."
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Définir la quantité"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Attrition"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Attrition estimée pour cette fabrication, exprimée en pourcentage (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Arrondi au multiple"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "Arrondir la quantité de production requise au multiple le plus proche de cette valeur"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Référence du poste de nomenclature"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Notes sur les postes de nomenclature"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Somme de contrôle"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Somme de contrôle de la ligne de nomenclature"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Validée"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Ce poste de nomenclature a été validé"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Obtient l'héritage"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Ce poste de nomenclature est hérité des nomenclatures des composants variants"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Les postes de stock pour les composants variants peuvent être utilisés pour ce poste de nomenclature"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "La quantité doit être un nombre entier pour les pièces pouvant être suivies"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "La sous-partie doit être spécifiée"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Remplacement d'un poste de nomenclature"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "La pièce de remplacement ne peut pas être identique à la pièce maîtresse"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Poste de nomenclature parent"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Pièce de rechange"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Première partie"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Partie 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Sélectionner une partie connexe"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Note pour cette relation"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Il n'est pas possible de créer une relation entre une pièce et elle-même"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Une relation en double existe déjà"
@@ -6465,203 +6469,199 @@ msgstr "La pièce du fabricant correspondant à ce MPN existe déjà"
msgid "Supplier part matching this SKU already exists"
msgstr "La pièce du fournisseur correspondant à cette UGS existe déjà"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Nom catégorie"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Construction"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Quantité de cette pièce actuellement en production"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "Quantité exceptionnelle de cette pièce sont planifié à la fabrication"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Éléments en stock"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Révisions"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Fournisseurs"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Stock total"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Stock non attribué"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Variante Stock"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Dupliquer une pièce"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Copier les données initiales d'une autre partie"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Stock initial"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Créer une pièce avec une quantité de stock initiale"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Informations sur le fournisseur"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Ajouter les informations initiales du fournisseur pour cette pièce"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Copier les paramètres de la catégorie"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Copier les modèles de paramètres de la catégorie de pièces sélectionnée"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Image existante"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Nom de fichier d'une image de pièce existante"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Le fichier image n'existe pas"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Valider l'ensemble de la nomenclature"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Peut construire"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Nécessaire pour fabrication"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Alloué à la fabrication"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Nécessaire pour les commandes"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Alloué aux commandes"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Prix Minimum"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Remplacer la valeur calculée pour le prix minimum"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Prix minimum monnaie"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Prix Maximum"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Remplacer la valeur calculée pour le prix maximum"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Devise du prix maximum"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Mise à jour"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Mise à jour des prix pour cette pièce"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Impossible de convertir les devises fournies en {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Le prix minimum ne doit pas être supérieur au prix maximum"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Le prix maximum ne doit pas être inférieur au prix minimum"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Sélectionner l'assemblage parent"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Sélectionner le composant"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Sélectionner la pièce à partir de laquelle copier la nomenclature"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Supprimer les données existantes"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Supprimer les postes de nomenclature existants avant de les copier"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Inclure l'héritage"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Inclure les éléments de nomenclature hérités des pièces modélisées"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Sauter les lignes non valides"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Activez cette option pour ignorer les lignes non valides"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Copier les pièces de remplacement"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Copie de pièces de rechange en cas de duplication de postes de nomenclature"
@@ -6732,108 +6732,108 @@ msgstr "Aucune action spécifiée"
msgid "No matching action found"
msgstr "Aucune action correspondante trouvée"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Aucune correspondance trouvée pour les données du code-barres"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Correspondance trouvée pour les données du code-barres"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Le modèle n'est pas pris en charge"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "L'instance de modèle n'a pas été trouvée"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Le code-barres correspond à l'article existant"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Aucune donnée correspondante n'a été trouvée"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Aucune pièce de fournisseur correspondante n'a été trouvée"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Plusieurs pièces de fournisseurs correspondantes trouvées"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Aucun plugin correspondant n'a été trouvé pour les données de code-barres"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Pièce du fournisseur assortie"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "L'article a déjà été reçu"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Pas de correspondance de plugin pour le code-barres du fournisseur"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Plusieurs postes correspondants trouvés"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Aucun poste correspondant n'a été trouvé"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Aucun ordre de vente n'a été fourni"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Le code-barres ne correspond pas à un article de stock existant"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Le poste de stock ne correspond pas au poste individuel"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Stock disponible insuffisant"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Article de stock attribué à la commande client"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Pas assez d'informations"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Trouvé l'article correspondant"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "La pièce du fournisseur ne correspond pas au poste"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Le poste est déjà clôturé"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Informations complémentaires requises pour l'obtention d'un poste budgétaire"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Poste de commande reçu"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Échec de la réception d'un poste"
@@ -6972,7 +6972,7 @@ msgstr "Prise en charge native des codes-barres"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Niveaux"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Quantité totale"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Données sur les stocks"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Inclure les données relatives au stock de pièces"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Données de tarification"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Inclure les données relatives au prix des pièces"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Données du fournisseur"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Inclure les données du fournisseur"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Données du fabricant"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Inclure les données du fabricant"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Données sur les suppléants"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Inclure les données des pièces de rechange"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Données de paramètres"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Inclure les données des paramètres de la pièce"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Exportateur de nomenclatures à plusieurs niveaux"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Prise en charge de l'exportation de nomenclatures multiniveaux"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "Niveau de la nomenclature"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Substituer {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Fournisseur {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "Fournisseur {n} UGS"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "Fournisseur {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Fabricant {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "Fabricant {n} MPN"
@@ -7354,11 +7354,11 @@ msgstr "Imprimante d'étiquettes InvenTree"
msgid "Provides support for printing using a machine"
msgstr "Fournit un support pour l'impression à l'aide d'une machine"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "dernière utilisation"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Paramètres"
@@ -8072,7 +8072,7 @@ msgstr "Total"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Numéro de série"
@@ -8142,7 +8142,7 @@ msgstr "Fichier image non trouvé"
msgid "part_image tag requires a Part instance"
msgstr "la balise part_image nécessite une instance de Part"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "la balise company_image nécessite une instance d'entreprise"
@@ -8158,7 +8158,7 @@ msgstr "Filtrer par lieux de premier niveau"
msgid "Include sub-locations in filtered results"
msgstr "Inclure les sous-emplacements dans les résultats filtrés"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Emplacement parent"
@@ -8311,314 +8311,314 @@ msgstr "Types d'emplacements de stock"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Icône par défaut pour tous les lieux qui n'ont pas d'icône (facultatif)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Emplacement du stock"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Emplacement des stocks"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Propriétaire"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Sélectionner un propriétaire"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Les articles en stock ne peuvent pas être directement placés dans un emplacement de stock structurel, mais peuvent être placés dans des emplacements subordonnés."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Externe"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Il s'agit d'un emplacement de stock externe"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Type d'emplacement"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Type d'emplacement du stock de cet emplacement"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Vous ne pouvez pas rendre ce magasin structurel car certains articles de stock y sont déjà localisés !"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "La pièce doit être spécifiée"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Les articles en stock ne peuvent pas être localisés dans des emplacements de stock structurel !"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Il n'est pas possible de créer un article de stock pour les pièces virtuelles"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Le type de pièce ('{self.supplier_part.part}') doit être {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
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:961
+#: stock/models.py:947
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:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "L'objet ne peut pas s'appartenir à lui-même"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "L'élément doit avoir une référence de construction si is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "La référence de construction ne pointe pas vers le même objet de pièce"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Poste de stock parent"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Pièce de base"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Sélectionnez une pièce fournisseur correspondante pour cet article en stock"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Où se trouve cet article en stock ?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "L'emballage de cet article en stock est stocké dans"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Installé dans"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "L'article a été installé dans un autre article ?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Numéro de série pour cet article"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Code de lot pour cet article de stock"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Quantité en stock"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Source Construire"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Construire pour cet article en stock"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Consommé par"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Ordre de construction qui a consommé cet article de stock"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Bon de commande source"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Commande d'achat pour cet article en stock"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Destination de la commande client"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Date d'expiration de l'article en stock. Le stock sera considéré comme périmé après cette date"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Supprimer lors de l'épuisement"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Supprimer ce poste de stock lorsque le stock est épuisé"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Prix d'achat de l'unité unique au moment de l'achat"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Converti en partie"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "La pièce n'est pas définie comme pouvant faire l'objet d'un suivi"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "La quantité doit être un nombre entier"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "La quantité ne doit pas dépasser la quantité disponible en stock ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Les numéros de série doivent être fournis sous forme de liste"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "La quantité ne correspond pas au nombre de numéros de série"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Le modèle de test n'existe pas"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Un article de stock a été affecté à une commande client"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "L'article de stock est installé dans un autre article"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "L'article de stock contient d'autres articles"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Un article de stock a été affecté à un client"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "L'article de stock est actuellement en production"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Le stock sérialisé ne peut pas être fusionné"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Articles de stock en double"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Les articles en stock doivent se référer à la même pièce"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Les articles en stock doivent se référer à la même pièce du fournisseur"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Les codes d'état des stocks doivent correspondre"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "StockItem ne peut pas être déplacé car il n'est pas en stock"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Suivi des articles en stock"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Notes d'entrée"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Résultat du test de l'article en stock"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Une valeur doit être fournie pour ce test"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "La pièce jointe doit être téléchargée pour ce test"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Valeur non valide pour ce test"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Résultat du test"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Valeur de sortie du test"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Pièce jointe au résultat du test"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Notes de test"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Station de test"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "L'identifiant de la station de test où le test a été effectué"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Commencé"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Horodatage du début du test"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Fini"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Horodatage de la fin du test"
@@ -8662,43 +8662,43 @@ msgstr "Sélectionner la pièce pour laquelle un numéro de série doit être g
msgid "Quantity of serial numbers to generate"
msgstr "Nombre de numéros de série à générer"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Modèle de test pour ce résultat"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "L'ID du modèle ou le nom du test doit être fourni"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "L'heure de fin du test ne peut être antérieure à l'heure de début du test"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Article Parent"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Article de stock parent"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Utiliser la taille de l'emballage lors de l'ajout : la quantité définie est le nombre d'emballages"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Entrez les numéros de série pour les nouveaux articles"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Référence du fournisseur"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "La quantité ne doit pas dépasser la quantité disponible en stock ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Emplacement du stock de destination"
@@ -8805,103 +8805,103 @@ msgstr "Sélectionner les articles en stock pour modifier leur statut"
msgid "No stock items selected"
msgstr "Aucun article en stock n'a été sélectionné"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sous-localisations"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Emplacement du stock mère"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "La pièce doit être vendable"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "L'article est affecté à une commande client"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "L'article est attribué à un ordre de fabrication"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Affectation d'articles en stock par le client"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "L'entreprise sélectionnée n'est pas un client"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Notes d'affectation des stocks"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Une liste des articles en stock doit être fournie"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Notes sur les fusions d'actions"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Autoriser les fournisseurs non concordants"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Permettre la fusion d'articles en stock avec des pièces de fournisseurs différents"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Autoriser la non-concordance des statuts"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Permettre la fusion d'articles en stock ayant des codes de statut différents"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Au moins deux articles en stock doivent être fournis"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Pas de changement"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Valeur de la clé primaire StockItem"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "L'article n'est plus en stock"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Notes sur les transactions boursières"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Numéro de série suivant"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Numéro de série précédent"
@@ -9383,83 +9383,83 @@ msgstr "Ventes"
msgid "Return Orders"
msgstr "Commandes de retour"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nom d'utilisateur"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Prénom"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Prénom de l'utilisateur"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Nom"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Nom de famille de l'utilisateur"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Adresse e-mail de l'utilisateur"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Staff"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Cet utilisateur a-t-il les permissions du staff"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Super-utilisateur"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Cet utilisateur est-il un super-utilisateur"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Ce compte d'utilisateur est-il actif"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Seul un superutilisateur peut modifier ce champ"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Mot de passe"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Mot de passe pour l'utilisateur"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "Écraser l'alerte sur les règles de mot de passe"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "Vous n'avez pas le droit de créer des utilisateurs"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Votre compte a été créé."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Veuillez utiliser la fonction de réinitialisation du mot de passe pour vous connecter"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Bienvenue dans InvenTree"
diff --git a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po
index 7d0b5591e5..56ff8cf9be 100644
--- a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr ""
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "למשתמש אין הרשאה לצפות במוזל הזה"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr ""
@@ -112,13 +112,13 @@ msgstr "הזן תאריך סיום"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr ""
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr ""
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "אימייל"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr "הפניה חייבת להתאים לדפוס הנדרש"
msgid "Reference number is too large"
msgstr "מספר האסמכתה גדול מדי"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "בחירה שגויה"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "שם"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "תיאור"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "תיאור (לא חובה)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "נתיב"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "שמות כפולים אינם יכולים להתקיים תחת אותו אב"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "הערות סימון (אופציונלי)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "נתוני ברקוד"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "נתוני ברקוד של צד שלישי"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "ברקוד Hash"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hash ייחודי של נתוני ברקוד"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "נמצא ברקוד קיים"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "שגיאת שרת"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "נרשמה שגיאה על ידי השרת."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "המספר חייב להיות תקין"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "מטבע"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "בחר מטבע מהאפשרויות הזמינות"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr "קוד מטבע לא מאושר"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr "מקור הבנייה"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "רכיב"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "קישור חיצוני"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "כמות"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "מספרים סידוריים"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "משתמש"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "קישור"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "קובץ מצורף"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "קובץ חסר"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "חסר קישור חיצוני"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "בחר קובץ לצירוף"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "הערה"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "שם קובץ"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "לא פורטה הפעולה"
msgid "No matching action found"
msgstr "פעולה מבוקשת לא נמצאה"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "שם משתמש"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "שם פרטי"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po
index 46f633e680..c041203eed 100644
--- a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Hindi\n"
"Language: hi_IN\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr ""
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr ""
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr ""
@@ -112,13 +112,13 @@ msgstr "तारीख दर्ज करें"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr ""
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "कनेक्शन त्रुटि"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "ई-मेल"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr ""
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr ""
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr ""
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po
index a43a916c80..9dc1e89d91 100644
--- a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Hungarian\n"
"Language: hu_HU\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API funkciót nem találom"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Tömeges művelethez tételek vagy szűrők megadása kötelező"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "A tételeket listában kell átadni"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Érvénytelen a tétel lista"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "A szűrőket dict - szótár - formában kell megadni"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Érvénytelen szűrők vannak megadva"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Minden szűrő csak true értékkel használható"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Nincs a szűrésnek megfelelő tétel"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Nincs adat megadva"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
-msgstr ""
+msgstr "Ennek a mezőnek egyedinek kell lennie."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Nincs jogosultságod az adatok megtekintéséhez"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "{original} átváltása {unit}-ra sikertelen"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Nem megfelelő mennyiség"
@@ -112,13 +112,13 @@ msgstr "Dátum megadása"
msgid "Invalid decimal value"
msgstr "Érvénytelen decimális érték"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Megjegyzések"
@@ -171,35 +171,35 @@ msgstr "HTML tag-ek eltávolítása ebből az értékből"
msgid "Data contains prohibited markdown content"
msgstr "Az adatban tiltott markdown tartalom található"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Csatlakozási hiba"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "A kiszolgáló érvénytelen státuszkóddal válaszolt"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Kivétel történt"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "A kiszolgáló érvénytelen Content-Length értéket adott"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "A kép mérete túl nagy"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "A kép letöltés meghaladja a maximális méretet"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "A kiszolgáló üres választ adott"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "A megadott URL nem egy érvényes kép fájl"
@@ -207,11 +207,11 @@ msgstr "A megadott URL nem egy érvényes kép fájl"
msgid "Log in to the app"
msgstr "Bejelentkezés az appba"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Email"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Mielőtt továbbmenne kötelező a kétfaktoros authentikációt engedélyeznie."
@@ -255,135 +255,135 @@ msgstr "Az azonosítónak egyeznie kell a mintával"
msgid "Reference number is too large"
msgstr "Azonosító szám túl nagy"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Érvénytelen választás"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Név"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Leírás"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Leírás (opcionális)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Elérési út"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Duplikált nevek nem lehetnek ugyanazon szülő alatt"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown megjegyzések (opcionális)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Vonalkód adat"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Harmadik féltől származó vonalkód adat"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Vonalkód hash"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Egyedi vonalkód hash"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Létező vonalkód"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Feladat hiba"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Az '{f}' háttérfeladat elbukott {n} próbálkozás után"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Kiszolgálóhiba"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "A kiszolgáló egy hibaüzenetet rögzített."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Kép"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Érvényes számnak kell lennie"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Pénznem"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Válassz pénznemet a lehetőségek közül"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Ez a mező nem lehet null."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Érvénytelen érték"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Távoli kép"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "A távoli kép URL-je"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Képek letöltése távoli URL-ről nem engedélyezett"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Nem sikerült letölteni a képet a távoli URL-ről"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "Érvénytelen tartalomtípus-formátum"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "Tartalomtípus nem található"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "A tartalomtípus nem egyezik a szükséges mixin osztállyal"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -553,8 +553,8 @@ msgstr "Érvénytelen fizikai mértékegység"
msgid "Not a valid currency code"
msgstr "Érvénytelen pénznem kód"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Rendelés állapota"
@@ -562,21 +562,21 @@ msgstr "Rendelés állapota"
msgid "Parent Build"
msgstr "Szülő gyártás"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Változatokkal együtt"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Változatokkal együtt"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Változatokkal együtt"
msgid "Part"
msgstr "Alkatrész"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategória"
@@ -666,80 +666,80 @@ msgstr "Eddig a dátumig"
msgid "Exclude Tree"
msgstr "Fa kihagyása"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "A gyártást be kell fejezni a törlés előtt"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Fogyóeszköz"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opcionális"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Gyártmány"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Követett"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Ellenőrizhető"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Befejezetlen rendelés"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Lefoglalva"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Felhasználva"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Elérhető"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Rendelve"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Gyártási utasítás"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Hely"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Kimenet"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "Szűrés a kimeneti készlet tétel azonosítójára. Használj 'null'-t ha a be nem épített gyártási tételeket keresed."
@@ -779,9 +779,9 @@ msgstr "Céldátumnak a kezdeti dátum után kell lennie"
msgid "Build Order Reference"
msgstr "Gyártási utasítás azonosító"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,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:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Forrás hely"
@@ -857,17 +857,17 @@ msgstr "Gyártási állapot"
msgid "Build status code"
msgstr "Gyártás státusz kód"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Batch kód"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Batch kód a gyártás kimenetéhez"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Létrehozás dátuma"
@@ -887,7 +887,7 @@ msgstr "Befejezés cél dátuma"
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:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Befejezés dátuma"
@@ -904,7 +904,7 @@ 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:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Felelős"
@@ -913,12 +913,12 @@ msgstr "Felelős"
msgid "User or group responsible for this build order"
msgstr "Felhasználó vagy csoport aki felelős ezért a gyártásért"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Külső link"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link külső URL-re"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Gyártási utasítás priorítása"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Projektszám"
@@ -960,7 +960,7 @@ msgstr "A {build} gyártási utasítás elkészült"
msgid "A build order has been completed"
msgstr "Gyártási utasítás elkészült"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Egyedi követésre jelölt alkatrészeknél kötelező sorozatszámot megadni"
@@ -976,43 +976,43 @@ 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:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Mennyiségnek nullánál többnek kell lennie"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "A mennyiség nem lehet több mint a gyártási mennyiség"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "A gyártási kimenet nem felelt meg az összes kötelező teszten"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "A {serial} gyártási kimenet nem felelt meg az összes kötelező teszten"
#: build/models.py:1230
msgid "Cannot partially complete a build output with allocated items"
-msgstr ""
+msgstr "Nem lehet részben befejezni egy építési kimenetet lefoglalt tételekkel"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Gyártási Rendelés Sor Tétel"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Gyártás objektum"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,428 +1030,420 @@ msgstr "Gyártás objektum"
msgid "Quantity"
msgstr "Mennyiség"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Gyártáshoz szükséges mennyiség"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Felhasznált készlet mennyisége"
-#: build/models.py:1773
+#: build/models.py:1771
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:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "A készlet tétel nem egyezik az alkatrészjegyzékkel"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+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:1869
#, 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:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Készlet túlfoglalva"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie"
-
-#: build/models.py:1816
-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:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "A készlet tétel nem egyezik az alkatrészjegyzékkel"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Lefoglalt mennyiség meghaladja az elérhető készletet"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Készlet tétel"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Forrás készlet tétel"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Készlet mennyiség amit foglaljunk a gyártáshoz"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Beépítés ebbe"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Cél készlet tétel"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Gyártási Szint"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Alkatrész neve"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Projekt kód címke"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Gyártás kimenet"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Gyártási kimenet nem egyezik a szülő gyártással"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Kimeneti alkatrész nem egyezik a gyártási utasításban lévő alkatrésszel"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Ez a gyártási kimenet már elkészült"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Ez a gyártási kimenet nincs teljesen lefoglalva"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Add meg a mennyiséget a gyártás kimenetéhez"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Egész számú mennyiség szükséges az egyedi követésre kötelezett alkatrészeknél"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
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:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Sorozatszámok"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Add meg a sorozatszámokat a gyártás kimenetéhez"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Legyártott készlet helye"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Sorozatszámok automatikus hozzárendelése"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Szükséges tételek automatikus hozzárendelése a megfelelő sorozatszámokkal"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "A következő sorozatszámok már léteznek vagy nem megfelelőek"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "A gyártási kimenetek listáját meg kell adni"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Selejtezet gyártási kimenetek helye"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Foglalások törlése"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Selejtezett kimenetek foglalásainak felszabadítása"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Selejtezés oka"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "A kész gyártási kimenetek helye"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Hiányos foglalás elfogadása"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Kimenetek befejezése akkor is ha a készlet nem\n"
"lett teljesen lefoglalva"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Lefoglalt készlet felhasználása"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Az összes ehhez a gyártáshoz lefoglalt készlet felhasználása"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Befejezetlen kimenetek törlése"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "A nem befejezett gyártási kimenetek törlése"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Nem engedélyezett"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Gyártásban fel lett használva"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Foglalás felszabadítása a készre jelentés előtt"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Túlfoglalt készlet"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Hogyan kezeljük az gyártáshoz rendelt egyéb készletet"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Pár készlet tétel túl lett foglalva"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Kiosztatlanok elfogadása"
-#: build/serializers.py:795
+#: build/serializers.py:777
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:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "A szükséges készlet nem lett teljesen lefoglalva"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Befejezetlenek elfogadása"
-#: build/serializers.py:813
+#: build/serializers.py:795
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:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Szükséges gyártási mennyiség nem lett elérve"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "A Gyártásnak nyitott leszármazott Gyártása van"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "A Gyártásnak folyamatban kell lennie"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Gyártás sor"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Gyártás kimenet"
-#: build/serializers.py:897
+#: build/serializers.py:879
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:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Gyártás sor tétel"
-#: build/serializers.py:946
+#: build/serializers.py:928
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:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "A tételnek kell legyen készlete"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Rendelkezésre álló mennyiség ({q}) túllépve"
-#: build/serializers.py:1011
+#: build/serializers.py:993
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:1019
+#: build/serializers.py:1001
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:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "A lefoglalandó tételeket meg kell adni"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
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:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Hely kizárása"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
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:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Felcserélhető készlet"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
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:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Készlet helyettesítés"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Helyettesítő alkatrészek foglalásának engedélyezése"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Opcionális tételek"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Opcionális tételek lefoglalása a gyártáshoz"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Nem sikerült az automatikus lefoglalás feladatot elindítani"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Alkatrészjegyzék Hivatkozás"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "Alkatrészjegyzék Cikk Azonosító"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Alkatrészjegyzék Alkatrész Név"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Gyártás"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Beszállítói alkatrész"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Lefoglalt mennyiség"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Gyártási Hivatkozás"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Alkatrész kategória Neve"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Követésre kötelezett"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Örökölt"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Változatok"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Alkatrészjegyzék tétel"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Gyártásban"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Gyártás Ütemezve"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Külső raktárkészlet"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Elérhető készlet"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Elérhető Helyettesítő Készlet"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Elérhető Készlet Változatokból"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "Felhasznált mennyiség meghaladja a lefoglalt mennyiséget"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Megjegyzés a készletfelhasználáshoz"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "Gyártási tételnek a megfelelő gyártási rendelésre kell mutatnia"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Dupla gyártási tétel lefoglalás"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "Gyártási sornak a megfelelő gyártási rendelésre kell mutatnia"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Duplikált gyártási sor foglalás"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Legalább egy tétel vagy sor megadása kötelező"
@@ -1499,19 +1491,19 @@ msgstr "Késésben lévő gyártás"
msgid "Build order {bo} is now overdue"
msgstr "A {bo} gyártás most már késésben van"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Ez egy hivatkozás"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Ez egy állomány"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "A felhasználó nem jogosult ezen mellékletek törlésére"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "A felhasználó nem jogosult ezen melléklet törlésére"
@@ -1531,7 +1523,11 @@ msgstr "Hiányzó érvényes valuta kód"
msgid "No plugin"
msgstr "Nincsen plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Projekt kód címke"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Frissítve"
@@ -1559,7 +1555,7 @@ msgstr "Projekt leírása"
msgid "User or group responsible for this project"
msgstr "A projektért felelős felhasználó vagy csoport"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Beállítási kulcs"
@@ -1591,550 +1587,550 @@ msgstr "Az érték nem felel meg az ellenőrzéseknek"
msgid "Key string must be unique"
msgstr "Kulcs string egyedi kell legyen"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Felhasználó"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Ársáv mennyiség"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Ár"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Egységár egy meghatározott mennyiség esetén"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Végpont"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Végpont ahol ez a webhook érkezik"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Webhook neve"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktív"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Aktív-e ez a webhook"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token a hozzáféréshez"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Titok"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Megosztott titok a HMAC-hoz"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Üzenet azonosító"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Egyedi azonosító ehhez az üzenethez"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Kiszolgáló"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Kiszolgáló ahonnan ez az üzenet érkezett"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Fejléc"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Üzenet fejléce"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Törzs"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Üzenet törzse"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Végpont amin ez az üzenet érkezett"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Dolgozott rajta"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Befejeződött a munka ezzel az üzenettel?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Azonosító"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Cím"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Link"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Közzétéve"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Szerző"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Összefoglaló"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Elolvasva"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Elolvasva?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Képfájl"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "A képhez tartozó model típus"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "A képhez tartozó model azonosító"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Egyedi mértékegység"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "A mértékegység szimbólumának egyedinek kell lennie"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "A mértékegységnek valós azonosítónak kell lennie"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Egység neve"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Szimbólum"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Opcionális mértékegység szimbólum"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definíció"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Mértékegység definíció"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Melléklet"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Hiányzó fájl"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Hiányzó külső link"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Modell típusa"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Képhez tartozó model típus"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Válaszd ki a mellekelni kívánt fájlt"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Megjegyzés"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Melléklet megjegyzés"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Feltöltés dátuma"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "A fájl feltöltésének dátuma"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Fájl mérete"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Fájlméret bájtban"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "A melléklet model típusa érvénytelen"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Egyedi Állapot"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Egyedi Állapotok"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Hivatkozott Állapot Készlet"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Az az Állapot készlet, melyet ez az egyedi állapot kibővít"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Logikai kulcs"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Az állapot logikai kulcsa amely megegyezik az üzleti logika egyedi állapotával"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Érték"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "A model adatbázisba tárolandó szám"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Az állapot neve"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Címke"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "A felületen megjelenített címke"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Szín"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "A felöleten megjelenő szín"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "A Model amihez ez az állapot tartozik"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Modelt választani kötelező"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Kulcsot választani kötelező"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Logikai kulcsot választani kötelező"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "A kulcs és a logikai kulcs nem lehet azonos"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Helyes hivatkozási állapot osztályt kell megadni"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "A kulcsnak eltérőnek kell lennie a hivatkozott állapotok logikai kulcsaitól"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "A logikai kulcsnak szerepelnie kell a hivatkozott állapotok logikai kulcsai közt"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "A Névnek el kell térnie a referencia állapotok neveitől"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Választéklista"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Választéklisták"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Választéklista neve"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Választéklista leírása"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Lezárt"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Választéklista lezárva?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Választéklista használható?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Forrás plugin"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Választéklista szolgáltató plugin"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Forrás szöveg"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Elhagyható lista forrás azonosító szöveg"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Alapértelmezett bejegyzés"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Alapértelmezett elem ezen a listán"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Létrehozva"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Választéklista létrehozási dátuma és ideje"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Utoljára módosítva"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "A választéklista utolsó módosításának dátuma és ideje"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Választéklista bejegyzés"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Választéklista bejegyzések"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Választéklista amihez ez a bejegyzés tartozik"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Választéklista bejegyzés értéke"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Választéklista bejegyzés felirata"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Választéklista bejegyzés leírása"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Választéklista bejegyzés aktív?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Paraméter sablon"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "Paraméter Sablonok"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Jelölőnégyzet paraméternek nem lehet mértékegysége"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Jelölőnégyzet paraméternek nem lehetnek választási lehetőségei"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "A lehetőségek egyediek kell legyenek"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "A paraméter sablon nevének egyedinek kell lennie"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "Célmodell típusa ehhez a paramétersablonhoz"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Paraméter neve"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Mértékegység"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Paraméter mértékegysége"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Paraméter leírása"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Jelölőnégyzet"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Ez a paraméter egy jelölőnégyzet?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Lehetőségek"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Választható lehetőségek (vesszővel elválasztva)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "A paraméter választéklistája"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Engedélyezve"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "Ez a paramétersablon engedélyezett?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "Paraméter"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "Paraméterek"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Hibás választás a paraméterre"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "Érvénytelen modelltípus megadva a paraméterhez"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "Modell ID"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "A célmodell azonosítója ehhez a paraméterhez"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Sablon"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "Paraméter sablon"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Adat"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Paraméter értéke"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2144,181 +2140,181 @@ msgstr "Paraméter értéke"
msgid "Note"
msgstr "Megjegyzés"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Opcionális megjegyzés mező"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Vonalkód beolvasás"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Vonalkód adat"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Melyik felhasználó olvasta be a vonalkódot"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Időbélyeg"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Vonalkód beolvasás dátuma és ideje"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Vonalkód feldolgozó URL végpont"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontextus"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Vonalkód olvasás kontextus adat"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Válasz"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Vonalkód olvasó válasz adat"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Eredmény"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Vonalkód olvasás sikeres volt?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Hiba történt"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: Email napló törlés védett. Állítsd be az INVENTREE_PROTECT_EMAIL_LOG-ot False-ra hogy engedélyezd a törlést."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "E-mail üzenet"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "E-mail üzenetek"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Bejelentve"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Elküldve"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Megbukott"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Kiszállítva"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Megerősítve"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Bejövő"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Kimenő"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Nincs válasz"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Kiszállítás követése"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Olvasási visszaigazolás"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Kattintások nyomkövetése"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "Globális ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Üzenet azonosítója (külső rendszertől származhat)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "Szál ID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Üzenet-sor azonosító (külső rendszerből származhat)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Szál"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Ehhez az üzenethez kapcsolódó üzenet-lánc"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
-msgstr ""
+msgstr "Prioritás"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Email szál"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Email szálak"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Kulcs"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Az üzenetlánc egyedi azonosítója (az üzenetlánc azonosítására szolgál)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Üzenetlánc egyedi azonosítója"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Belső kezdés"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Ez az üzenetlánc belül indult?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Az üzenetlánc kezdeti dátuma és ideje"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Az üzenetlánc utolsó módosításának dátuma és ideje"
@@ -2340,7 +2336,7 @@ msgstr "{verbose_name} megszakítva"
msgid "A order that is assigned to you was canceled"
msgstr "Egy hozzád rendelt megrendelés megszakítva"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Készlet érkezett"
@@ -2352,93 +2348,101 @@ msgstr "Készlet érkezett egy beszerzési megrendeléshez"
msgid "Items have been received against a return order"
msgstr "Készlet érkezett vissza egy visszavétel miatt"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Ez a beállítás felül van bírálva egy környezeti változó által"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Felülbírálás"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Folyamatban"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Folyamatban lévő feladatok"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Ütemezett Feladatok"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Hibás feladatok"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Feladat ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Egyedi feladat ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Zárol"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Zárolási idő"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Feladat neve"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funkció"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Funkció neve"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Paraméterek"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Feladat paraméterei"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Kulcsszó paraméterek"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Feladat kulcsszó paraméterek"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Fájlnév"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Modell típusa"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "A felhasználónak nincs joga létrehozni vagy módosítani ehhez a modelhez tartozó mellékleteket"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "A felhasználónak nincs jogosultsága paraméterek létrehozására vagy szerkesztésére ehhez a modellhez"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Választéklista lezárva"
@@ -2446,1130 +2450,1134 @@ msgstr "Választéklista lezárva"
msgid "No group"
msgstr "Nincs csoport"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "A site URL blokkolva van a konfigurációban"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Újraindítás szükséges"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Egy olyan beállítás megváltozott ami a kiszolgáló újraindítását igényli"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Függőben levő migrációk"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Függőben levő adatbázis migrációk"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Aktív figyelmeztető kódok"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Aktív figyelmeztető kódok dict-je"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "Példány azonosító"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Az InvenTree példány egyedi azonosítója"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Bejelentési ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Azonosítsa-e magát az szerver a példányazonosítóval a szerver állapotban (authentikáció nélkül)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Kiszolgáló példány neve"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "String leíró a kiszolgáló példányhoz"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Példány név használata"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Példány név használata a címsorban"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Verzió infók megjelenítésének tiltása"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Verzió infók megjelenítése csak admin felhasználóknak"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Cég neve"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Belső cégnév"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Kiindulási URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Kiindulási URL a kiszolgáló példányhoz"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Alapértelmezett pénznem"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Válassz alap pénznemet az ár számításokhoz"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Támogatott valuták"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Támogatott valuták listája"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Árfolyam frissítési gyakoriság"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Milyen gyakran frissítse az árfolyamokat (nulla a kikapcsoláshoz)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "nap"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Árfolyam frissítő plugin"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Kiválasztott árfolyam frissítő plugin"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Letöltés URL-ről"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Képek és fájlok letöltésének engedélyezése külső URL-ről"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Letöltési méret korlát"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maximum megengedett letöltési mérete a távoli képeknek"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Felhasznált User-agent az URL-ről letöltéshez"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "A külső URL-ről letöltéshez használt user-agent felülbírálásának engedélyezése (hagyd üresen az alapértelmezéshez)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Erős URL validáció"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Sablon specifikáció igénylése az URL validálásnál"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Frissítés keresés gyakorisága"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Milyen gyakran ellenőrizze van-e új frissítés (0=soha)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatikus biztonsági mentés"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Adatbázis és média fájlok automatikus biztonsági mentése"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Automata biztonsági mentés gyakorisága"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Hány naponta készüljön automatikus biztonsági mentés"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Feladat törlési gyakoriság"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Háttérfolyamat eredmények törlése megadott nap eltelte után"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Hibanapló törlési gyakoriság"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Hibanapló bejegyzések törlése megadott nap eltelte után"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Értesítés törlési gyakoriság"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Felhasználói értesítések törlése megadott nap eltelte után"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Email törlési gyakoriság"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "Email üzenetek törlése megadott nap eltelte után"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Email napló védett"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Megakadályozza az email napló bejegyzések törlését"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Vonalkód támogatás"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Vonalkód olvasó támogatás engedélyezése a web felületen"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Vonalkód olvasás eredmények tárolása"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Vonalkód olvasási eredmények tárolása az adatbázisban"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Maximálisan tárolt vonalkód olvasások mennyisége"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Maximálisan tárolt vonalkód olvasások száma"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Vonalkód beadási késleltetés"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Vonalkód beadáskor a feldolgozás késleltetési ideje"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Webkamerás vonalkód olvasás"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Webkamerás kódolvasás engedélyezése a böngészőből"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Vonalkód Adat Megjelenítése"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Vonalkód adat megjelenítése a böngészőben szövegként"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Vonalkód Generáló Plugin"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Belső vonalkód generálásra használatos plugin"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Alkatrész változatok"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Alkatrész változat vagy verziószám tulajdonság használata"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Csak Összeállítás Verzió"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Csak összeállított alkatrészeknek lehessen verziója"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Lehessen törölni az Összeállításból"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Lehessen olyan alkatrészt törölni ami Összeállításban szerepel"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN reguláris kifejezés"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Reguláris kifejezés ami illeszkedik az alkatrész IPN-re"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Többször is előforduló IPN engedélyezése"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Azonos IPN használható legyen több alkatrészre is"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "IPN szerkesztésének engedélyezése"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "IPN megváltoztatásánsak engedélyezése az alkatrész szerkesztése közben"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Alkatrészjegyzék adatok másolása"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Alkatrész másoláskor az alkatrészjegyzék adatokat is másoljuk alapból"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Alkatrész paraméterek másolása"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Alkatrész másoláskor a paramétereket is másoljuk alapból"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Alkatrész teszt adatok másolása"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Alkatrész másoláskor a tesztek adatait is másoljuk alapból"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kategória paraméter sablonok másolása"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Alkatrészek alapból sablon alkatrészek legyenek"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Alkatrészeket alapból lehessen gyártani másik alkatrészekből"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Összetevő"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
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/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Beszerezhető"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Alkatrészek alapból beszerezhetők legyenek"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Értékesíthető"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Alkatrészek alapból eladhatók legyenek"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Alkatrészek alapból követésre kötelezettek legyenek"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuális"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Alkatrészek alapból virtuálisak legyenek"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Kapcsolódó alkatrészek megjelenítése"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Alkatrész kapcsolódó alkatrészeinek megjelenítése"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Kezdeti készlet adatok"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Kezdeti készlet létrehozása új alkatrész felvételekor"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Kezdeti beszállítói adatok"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Kezdeti beszállítói adatok létrehozása új alkatrész felvételekor"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Alkatrész név megjelenítés formátuma"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formátum az alkatrész név megjelenítéséhez"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Alkatrész kategória alapértelmezett ikon"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Alkatrész kategória alapértelmezett ikon (üres ha nincs)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Áraknál használt tizedesjegyek min. száma"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Tizedejegyek minimális száma az árak megjelenítésekor"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Áraknál használt tizedesjegyek max. száma"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Tizedejegyek maximális száma az árak megjelenítésekor"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Beszállítói árazás használata"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Beszállítói ársávok megjelenítése az általános árkalkulációkban"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Beszerzési előzmények felülbírálása"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Beszerzési árelőzmények felülírják a beszállítói ársávokat"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Készlet tétel ár használata"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "A kézzel bevitt készlet tétel árak használata az árszámításokhoz"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Készlet tétel ár kora"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Az ennyi napnál régebbi készlet tételek kizárása az árszámításból"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Alkatrészváltozat árak használata"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Alkatrészváltozat árak megjelenítése az általános árkalkulációkban"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Csak az aktív változatokat"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Csak az aktív alkatrészváltozatok használata az árazásban"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Árazás automatikus frissítése"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Alkatrész árazás automatikus frissítése belső adat változáskor"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Árazás újraszámítás gyakoriság"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Árak automatikus frissítése ennyi nap után"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Belső árak"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Alkatrészekhez belső ár engedélyezése"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Belső ár felülbírálása"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Ha elérhetőek az árkalkulációkban a belső árak lesznek alapul véve"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Címke nyomtatás engedélyezése"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Címke nyomtatás engedélyezése a web felületről"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Címke kép DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
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/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Riportok engedélyezése"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Riportok előállításának engedélyezése"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Debug mód"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Riportok előállítása HTML formátumban (hibakereséshez)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Jelentési hibák naplózása"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Jelentések generálása közben jelentkező hibák naplózása"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Lapméret"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Alapértelmezett lapméret a PDF riportokhoz"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Csak választható mértékegységek"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "A megadott mértékegység csak a beállított lehetőségekből legyen elfogadva"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Globálisan egyedi sorozatszámok"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "A sorozatszámoknak egyedinek kell lennie a teljes készletre vonatkozóan"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Kimerült készlet törlése"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Alapértelmezett művelet mikor a készlet tétel elfogy"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Batch kód sablon"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
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/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Készlet lejárata"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Készlet lejárat kezelésének engedélyezése"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Lejárt készlet értékesítése"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Lejárt készlet értékesítésének engedélyezése"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Álló készlet ideje"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
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/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Lejárt készlet gyártása"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Gyártás engedélyezése lejárt készletből"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Készlet tulajdonosok kezelése"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Tulajdonosok kezelésének engedélyezése a készlet helyekre és tételekre"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Hely alapértelmezett ikon"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Hely alapértelmezett ikon (üres ha nincs)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Beépített készlet megjelenítése"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Beépített készlet tételek megjelenítése a készlet táblákban"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Tételek telepítésekor a darabjegyzék ellenőrzése"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "A beépített tételeknek a szülő elem darabjegyzékében szerepelniük kell"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Lehet Hiányzó Készletet Mozgatni"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Lehet-e olyan készleteket mozgatni készlethelyek között amik nincsenek raktáron"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Gyártási utasítás azonosító minta"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
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/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Felelős tulajdonos szükséges"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Minden rendeléshez felelőst kell rendelni"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Szükséges Aktív Alkatrész"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Inaktív alkatrészekre nem lehet Gyártási Rendelést létrehozni"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Elvárás a Lezárt Alkatrész"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Megakadályozza, hogy nem lezárt alkatrészekre gyártási rendelést lehessen indítani"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Jóváhagyott Alkatrészjegyzék Kötelező"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Megakadályozza gyártási rendelés készítését ha nincsen az Alkatrészjegyzék jóváhagyva"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Leszármazott Gyártásoknak Lezártnak Kell Lennie"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Amíg minden leszármazott gyártás le nincsen zárva nem lehet a szülő gyártást lezárni"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Külső Gyártási Rendelések"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Engedélyezze a külső gyártási rendelés funkciót"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blokkolás a tesztek sikeres végrehajtásáig"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Nem lehet gyártási tételt befejezni amíg valamennyi kötelező teszt sikeres nem lett"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Visszavétel engedélyezése"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Visszavételek engedélyezése a felületen"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Visszavétel azonosító minta"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Szükséges minta a visszavétel azonosító mező előállításához"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Befejezett visszavétel szerkesztése"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Visszavétel szerkesztésének engedélyezése befejezés után"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Vevői rendelés azonosító minta"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
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/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Vevői rendeléshez alapértelmezett szállítmány"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Szállítmány automatikus létrehozása az új vevő rendelésekhez"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Befejezett vevői rendelés szerkesztése"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Vevői rendelések szerkesztésének engedélyezése szállítás vagy befejezés után"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
-msgstr ""
+msgstr "Szállítmány Ellenőrzést Igényel"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
-msgstr ""
+msgstr "Megakadályozza a szállítmányok befejezését, amíg a tételeket nem ellenőrizték"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Leszállított Rendelések Készre jelölése"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Leszállítottnak jelölt Értékesítési rendelések automatikusan Kész-re lesznek állítva, a \"Leszállított\" állapot átugrásával"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Beszerzési rendelés azonosító minta"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
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/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Befejezett beszerzési rendelés szerkesztése"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Beszérzési rendelések szerkesztésének engedélyezése kiküldés vagy befejezés után"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Jelenlegi pénznem"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Tétel érték bázis-pénznemre váltása készlet beérkezéskor"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Beszerzési rendelések automatikus befejezése"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "A beszerzési rendelés automatikus befejezése ha minden sortétel beérkezett"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Elfelejtett jelszó engedélyezése"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Elfelejtett jelszó funkció engedélyezése a bejentkező oldalon"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Regisztráció engedélyezése"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
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/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "SSO engedélyezése"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "SSO engedélyezése a bejelentkező oldalon"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "SSO regisztráció engedélyezése"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése SSO-n keresztül a bejelentkező oldalon"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "SSO csoport szinkronizálás engedélyezése"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Az InvenTree csoportok szinkronizálása a hitelesítésszolgáltatóhoz"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSO csoport kulcs"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "A csoportkérés tulajdonság neve amit a hitelesítésszolgáltató nyújt"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "SSO csoport hozzárendelés"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Az SSO csoportok hozzárendelése az InvenTree csoportokhoz. Ha a helyi csoport nem létezik, létre lesz hozva."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Az SSO-n kívüli csoportok eltávolítása"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Ha egy felhasználóhoz rendelt csoport nem létezik az azonosításszolgáltatóban azt eltávolítsuk el. Ennek a kikapcsolása biztonsági problémákhoz vezethet"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email szükséges"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Kötelező email megadás regisztrációkor"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "SSO felhasználók automatikus kitöltése"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Felhasználó adatainak automatikus kitöltése az SSO fiókadatokból"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Email kétszer"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
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/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Jelszó kétszer"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Regisztráláskor kétszer kérdezze a felhasználó jelszavát"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Engedélyezett domainek"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Feliratkozás korlátozása megadott domain-ekre (vesszővel elválasztva, @-al kezdve)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Csoport regisztráláskor"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Ehhez a csoporthoz lesznek az új felhasználók rendelve. Ha az SSO csoport szinkronizálás engedélyezve van, akkor ez a csoport csak akkor lesz hozzárendelve a felhasználóhoz ha az azonosítás szolgáltató semmilyen csoportot nem rendelt hozzá."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Többfaktoros hitelesítés kényszerítése"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "A felhasználóknak többfaktoros hitelesítést kell használniuk."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Pluginok ellenőrzése indításkor"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Ellenőrizze induláskor hogy minden plugin telepítve van - engedélyezd konténer környezetben (docker)"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Plugin frissítések ellenőrzése"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Frissítések periódikus ellenőrzésének engedélyezése a telepített pluginokra"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "URL integráció engedélyezése"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "URL útvonalalak hozzáadásának engedélyezése a pluginok számára"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Navigációs integráció engedélyezése"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Navigációs integráció engedélyezése a pluginok számára"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "App integráció engedélyezése"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "App hozzáadásának engedélyezése a pluginok számára"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Ütemezés integráció engedélyezése"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
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/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Esemény integráció engedélyezése"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Belső eseményekre reagálás engedélyezése a pluginok számára"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Interfész integráció engedélyezése"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Pluginok felhasználói felületbe épülésének engedélyezése"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Email integráció engedélyezése"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Pluginok bejövő/kimenő levelekhez hozzáférésének engedélyezése"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Projektszámok engedélyezése"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Projectek nyomkövetéséhez projekt kódok engedélyezése"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Készlettörténet engedélyezése"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "A készletek korábbi mennyiségének és értékének naplózásának engedélyezés"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Külső helyek nélkül"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "A külső helyszínen tárolt készletek kihagyása a készlet történet számításokból"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Automatikus leltár időpontja"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Az automatikus készletállapot rögzítések közötti napok száma"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Régi készlettörténet bejegyzések törlése"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Adott napnál régebbi készlettörténet bejegyzések törlése"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Készlettörténet törlési gyakoriság"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Készlettörténet bejegyzések ennyi napo után törlődnek"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Felhasználók teljes nevének megjelenítése"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Felhasználói név helyett a felhasználók teljes neve jelenik meg"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Felhasználói profilok megjelenítése"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Felhasználói profilok megjelenítése a profil oldalukon"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Teszt állomás adatok engedélyezése"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Tesztállomás adatok gyűjtésének teszt eredménybe gyűjtésének engedélyezése"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
-msgstr ""
+msgstr "Gép Ping Engedélyezése"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
-msgstr ""
+msgstr "Időszakos ping feladat engedélyezése a regisztrált gépekhez az állapotuk ellenőrzésére"
#: common/setting/user.py:23
msgid "Inline label display"
@@ -3597,11 +3605,11 @@ msgstr "PDF riport megjelenítése a böngészőben letöltés helyett"
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "Vonalkód olvasó az Űrlap mezők között"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "Vonalkód olvasó adatbevitel engedélyezése az űrlapokon"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3869,7 +3877,7 @@ msgstr "Az utoljára használt nyomtató tárolása a felhasználóhoz"
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "Minden modell"
#: common/validators.py:63
msgid "No attachment model type provided"
@@ -3912,29 +3920,29 @@ msgstr "Az alkatrész aktív"
msgid "Manufacturer is Active"
msgstr "A Gyártó Aktív"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "A Szállítói Alkatrész Aktív"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "A saját alkatrész Aktív"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "A Beszállító Aktív"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Gyártó"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Cég"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Van készleten"
@@ -3970,7 +3978,7 @@ msgstr "Kapcsolattartó telefonszáma"
msgid "Contact email address"
msgstr "Kapcsolattartó email címe"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Névjegy"
@@ -4023,255 +4031,247 @@ msgstr "Adószám"
msgid "Company Tax ID"
msgstr "Céges adószám"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Cím"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Címek"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Cég kiválasztása"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Cím megnevezése"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Címhez tartozó leírás, megnevezés"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Elsődleges cím"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Beállítás elsődleges címként"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "1. sor"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Cím első sora"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "2. sor"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Cím második sora"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Irányítószám"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Város/Régió"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Irányítószám város/régió"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Állam/Megye"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Állam vagy megye"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Ország"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Cím országa"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Megjegyzés a futárnak"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Futárnak szóló megjegyzések"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Belső szállítási megjegyzések"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Szállítási megjegyzések belső használatra"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Link a címinformációkhoz (külső)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Gyártói alkatrész"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Kiindulási alkatrész"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Válassz alkatrészt"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Gyártó kiválasztása"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN (Gyártói cikkszám)"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Gyártói cikkszám"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL link a gyártói alkatrészhez"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Gyártói alkatrész leírása"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "A csomagolási egységnek kompatibilisnek kell lennie az alkatrész mértékegységgel"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Csomagolási mennyiségnek nullánál többnek kell lennie"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészre kell hivatkoznia"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Beszállító"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Beszállító kiválasztása"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Beszállítói cikkszám"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Ez a szállítói termék aktív?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Gyártói alkatrész kiválasztása"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL link a beszállítói alkatrészhez"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Beszállítói alkatrész leírása"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "alap költség"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimális díj (pl. tárolási díj)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Csomagolás"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Alkatrész csomagolás"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Csomagolási mennyiség"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Egy csomagban kiszállítható mennyiség, hagyd üresen az egyedi tételeknél."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "többszörös"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Többszörös rendelés"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Beszállítónál elérhető mennyiség"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Elérhetőség frissítve"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Utolsó elérhetőségi adat frissítés"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Beszállítói Ár Kedvezmény"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Visszaadja az elsődleges cím szöveges változatát. Ez visszamenőleges kompatibilitás miatt kell."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Beszállító által használt alapértelmezett pénznem"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Cégnév"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Készleten"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
-msgstr ""
+msgstr "Árkategóriák"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Hiba történt adatexportálás közben"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Az adatexportáló plugin téves adatformátumot adott vissza"
@@ -4419,7 +4419,7 @@ msgstr "Eredeti sor adat"
msgid "Errors"
msgstr "Hibák"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Érvényes"
@@ -4531,7 +4531,7 @@ msgstr "Címkénkénti nyomtatandó mennyiség"
msgid "Connected"
msgstr "Csatlakoztatba"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Ismeretlen"
@@ -4541,7 +4541,7 @@ msgstr "Nyomtatás"
#: machine/machine_types/label_printer.py:234
msgid "Warning"
-msgstr ""
+msgstr "Figyelmeztetés"
#: machine/machine_types/label_printer.py:235
msgid "No media"
@@ -4557,7 +4557,7 @@ msgstr "Nincs kapcsolat"
#: machine/machine_types/label_printer.py:238
msgid "Error"
-msgstr ""
+msgstr "Hiba"
#: machine/machine_types/label_printer.py:245
msgid "Label Printer"
@@ -4629,11 +4629,11 @@ msgstr "Konfiguráció típusa"
#: machine/serializers.py:24
msgid "Key of the property"
-msgstr ""
+msgstr "A tulajdonság kulcsa"
#: machine/serializers.py:27
msgid "Value of the property"
-msgstr ""
+msgstr "A tulajdonság értéke"
#: machine/serializers.py:30 users/models.py:238
msgid "Group"
@@ -4641,29 +4641,29 @@ msgstr "Csoport"
#: machine/serializers.py:30
msgid "Grouping of the property"
-msgstr ""
+msgstr "A tulajdonság csoportosítása"
#: machine/serializers.py:33
msgid "Type"
-msgstr ""
+msgstr "Típus"
#: machine/serializers.py:35
msgid "Type of the property"
-msgstr ""
+msgstr "A tulajdonság típusa"
#: machine/serializers.py:40
msgid "Max Progress"
-msgstr ""
+msgstr "Maximális Előrehaladás"
#: machine/serializers.py:41
msgid "Maximum value for progress type, required if type=progress"
-msgstr ""
+msgstr "Maximális érték az előrehaladás típushoz, kötelező ha típus=előrehaladás"
#: order/api.py:130
msgid "Order Reference"
msgstr "Rendelés azonosítója"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Kintlévő"
@@ -4671,7 +4671,7 @@ msgstr "Kintlévő"
msgid "Has Project Code"
msgstr "Van projektszáma"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Készítette"
@@ -4711,11 +4711,11 @@ msgstr "Céldátum ez után"
msgid "Has Pricing"
msgstr "Van árazás"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Ez előtt befejezve"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Befejezve ez után"
@@ -4723,40 +4723,40 @@ msgstr "Befejezve ez után"
msgid "External Build Order"
msgstr "Külső Gyártási Rendelés"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Rendelés"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "A rendelés teljesítve"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Belső alkatrész"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "A rendelés függőben"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Kész"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Van kiszállítás"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Beszerzési rendelés"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4765,7 +4765,7 @@ msgstr "Beszerzési rendelés"
msgid "Sales Order"
msgstr "Vevői rendelés"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4782,11 +4782,11 @@ msgstr "Teljes ár"
msgid "Total price for this order"
msgstr "A rendelés teljes ára"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Rendelés pénzneme"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Megrendeléshez használt pénznem (hagyd üresen a cégnél alapértelmezetthez)"
@@ -4804,242 +4804,242 @@ msgstr "A kezdeti dátumnak meg kell előznie a céldátumot"
#: order/models.py:391
msgid "Address does not match selected company"
-msgstr ""
+msgstr "A cím nem egyezik a kiválasztott vállalattal"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Rendelés leírása (opcionális)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Válassz projektszámot ehhez a rendeléshez"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link külső weboldalra"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Kezdés dátuma"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "A tervezett kezdeti dátum ehhez a gyártáshoz"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Cél dátum"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Várt teljesítési dátuma a megrendelésnek. Ezután már késésben lévőnek számít majd."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Kiállítás dátuma"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Kiállítás dátuma"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Felhasználó vagy csoport aki felelőse ennek a rendelésnek"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Kapcsolattartó ehhez a rendeléshez"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Cég címei ehhez a rendeléshez"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Rendelés azonosító"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Állapot"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Beszerzési rendelés állapota"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Cég akitől a tételek beszerzésre kerülnek"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Beszállítói azonosító"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Beszállítói rendelés azonosító kód"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "érkeztette"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Rendelés teljesítési dátuma"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Cél"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Beérkezett tételek tárolója"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Az alkatrész beszállítója meg kell egyezzen a beszerzési rendelés beszállítójával"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Sortétel nem egyezik a beszerzési megrendeléssel"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "Sortételen hiányzik a kapcsolódó alkatrész"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Mennyiség pozitív kell legyen"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Vevő"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Cég akinek a tételek értékesítésre kerülnek"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Értékesítési rendelés állapot"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Vevői azonosító "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Megrendelés azonosító kódja a vevőnél"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Kiszállítás dátuma"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "szállította"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Rendelés már teljesítve"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Rendelés már visszavonva"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Csak nyitott rendelés jelölhető késznek"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "A rendelés nem jelölhető késznek mivel függő szállítmányok vannak"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "A rendelést nem lehet befejezni mert hiányos foglalások vannak"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "A rendelés nem jelölhető késznek mivel nem teljesített sortételek vannak"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "A rendelés le van zárva és nem lehet módosítani"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Tétel mennyiség"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Sortétel azonosító"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Sortétel megjegyzései"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Cél dátuma ennek a sortételnek (hagyd üresen a rendelés céldátum használatához)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Sortétel leírása (opcionális)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "További kontextus ehhez a sorhoz"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Egységár"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Vevői Rendelés Sortétel"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Beszállítói alkatrésznek egyeznie kell a beszállítóval"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "Gyártási rendelést külsőnek kell jelölni"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Gyártási rendeléseket csak összeszerelhető alkatrészekhez lehet kapcsolni"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "Gyártási rendelés alkatrészének meg kell egyeznie a sortétel alkatrésszel"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Beszállítói alkatrész"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Beérkezett"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Érkezett tételek száma"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Beszerzési ár"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Beszerzési egységár"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Külső gyártási rendelés amit ez a sortétel teljesít"
@@ -5077,11 +5077,11 @@ msgstr "Vevői Rendelés Szállítása"
#: order/models.py:2254
msgid "Shipment address must match the customer"
-msgstr ""
+msgstr "A szállítási címnek egyeznie kell az ügyféllel"
#: order/models.py:2290
msgid "Shipping address for this shipment"
-msgstr ""
+msgstr "Szállítási cím ehhez a szállítmányhoz"
#: order/models.py:2298
msgid "Date of shipment"
@@ -5103,8 +5103,8 @@ msgstr "Ellenőrizte"
msgid "User who checked this shipment"
msgstr "Felhasználó aki ellenőrizte ezt a szállítmányt"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Szállítmány"
@@ -5139,7 +5139,7 @@ msgstr "Szállítmány nem tartalmaz foglalt készlet tételeket"
#: order/models.py:2388
msgid "Shipment must be checked before it can be completed"
-msgstr ""
+msgstr "A szállítmányt ellenőrizni kell, mielőtt befejezhetné"
#: order/models.py:2467
msgid "Sales Order Extra Line"
@@ -5165,7 +5165,11 @@ msgstr "Nem foglalható készlet egy olyan sorhoz amiben nincs alkatrész"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "A lefoglalandó mennyiség nem haladhatja meg a készlet mennyiségét"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen"
@@ -5173,7 +5177,7 @@ msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen"
msgid "Sales order does not match shipment"
msgstr "Vevői rendelés nem egyezik a szállítmánnyal"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Szállítmány nem egyezik a vevői rendeléssel"
@@ -5257,247 +5261,247 @@ msgstr "Sortétel visszaküldésének vagy javításának költsége"
msgid "Return Order Extra Line"
msgstr "Visszavétel extra tétel"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "Rendelés azonosító"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "A duplikálandó megrendelés száma"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Sorok másolása"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Sortételek másolása az eredeti rendelésről"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Extra sorok másolása"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Az eredeti rendelés extra tételeinek másolása"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Sortételek"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Kész sorok"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Rendelés duplikálása"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Rendelés másolás beállításai"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Érvénytelen rendelés ID"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Beszállító neve"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "A rendelést nem lehet törölni"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Rendelés lezárása teljesítetlen sortételek esetén is"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "A rendelésben teljesítetlen sortételek vannak"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "A rendelés nem nyitott"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Automata árazás"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Beszerzési ár automatikus számítása a beszállítói alkatrész adatai alapján"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Beszérzési ár pénzneme"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Elemek összevonása"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Azonos forrás és cél dátumú Alkatrész tételeinek összevonása egy tételre"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU (leltári azonosító)"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Belső cikkszám"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Belső cikkszám"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Beszállítói alkatrészt meg kell adni"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Beszerzési rendelést meg kell adni"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "A beszállítónak egyeznie kell a beszerzési rendelésben lévővel"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "A beszerzési rendelésnek egyeznie kell a beszállítóval"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Sortétel"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Válassz cél helyet a beérkezett tételeknek"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Írd be a batch kódját a beérkezett tételeknek"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Lejárati dátum"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Írd be a beérkező készlet tételek lejárati dátumát"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Írd be a sorozatszámokat a beérkezett tételekhez"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Bejövő készlettételek csomagolási információjának felülbírálata"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Kiegészítő megjegyzés beérkező készlettételekhez"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Vonalkód"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Beolvasott vonalkód"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Ez a vonalkód már használva van"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Sortételt meg kell adni"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "A cél helyet kötelező megadni"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Megadott vonalkódoknak egyedieknek kel lenniük"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Szállítások"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Kész szállítmányok"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Eladási ár pénzneme"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Foglalt tételek"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Nincsenek szállítmány részletek megadva"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Sortétel nincs hozzárendelve ehhez a rendeléshez"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Mennyiség pozitív kell legyen"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Írd be a sorozatszámokat a kiosztáshoz"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Szállítmány kiszállítva"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Szállítmány nincs hozzárendelve ehhez a rendeléshez"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Nincs találat a következő sorozatszámokra"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Az alábbi sorozatszámok nem elérhetők"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Visszavétel sortétel"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Sortétel nem egyezik a visszavétellel"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "A sortétel már beérkezett"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Csak folyamatban lévő megrendelés tételeit lehet bevételezni"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Visszaküldési mennyiség"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Sortétel pénzneme"
@@ -5626,15 +5630,15 @@ msgstr "Alkatrészjegyzék ellenőrizve"
#: part/api.py:969
msgid "Cascade Categories"
-msgstr ""
+msgstr "Kaszkád Kategóriák"
#: part/api.py:970
msgid "If true, include items in child categories of the given category"
-msgstr ""
+msgstr "Ha igaz, tartalmazza az adott kategória alkategóriáiban lévő tételeket"
#: part/api.py:976
msgid "Filter by numeric category ID or the literal 'null'"
-msgstr ""
+msgstr "Szűrés numerikus kategória azonosító vagy a 'null' literál szerint"
#: part/api.py:1258
msgid "Assembly part is testable"
@@ -5648,7 +5652,7 @@ msgstr "Összetevő alkatrész ellenőrizhető"
msgid "Uses"
msgstr "Használ"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Alkatrész kategória"
@@ -5657,7 +5661,7 @@ msgstr "Alkatrész kategória"
msgid "Part Categories"
msgstr "Alkatrész kategóriák"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Alapértelmezett hely"
@@ -5665,7 +5669,7 @@ msgstr "Alapértelmezett hely"
msgid "Default location for parts in this category"
msgstr "Ebben a kategóriában lévő alkatrészek helye alapban"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Szerkezeti"
@@ -5681,12 +5685,12 @@ 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:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ikon"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ikon (opcionális)"
@@ -5694,655 +5698,655 @@ msgstr "Ikon (opcionális)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Nem lehet az alkatrészkategóriát szerkezeti kategóriává tenni, mert már vannak itt alkatrészek!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Alkatrészcsoport Paraméter Sablon"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Alapértelmezett érték"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Alapértelmezett paraméter érték"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Alkatrészek"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
-msgstr ""
+msgstr "Nem lehet törölni egy zárolt alkatrész paramétereit"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
-msgstr ""
+msgstr "Nem lehet módosítani egy zárolt alkatrész paramétereit"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Lezárt alkatrész nem törölhető"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Aktív alkatrész nem törölhető"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Összeállításban felhasznált alkatrész nem törölhető"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Az '{self}' alkatrész nem használható a '{parent}' alkatrészjegyzékében (mert rekurzív lenne)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Az '{parent}' alkatrész szerepel a '{self}' alkatrészjegyzékében (rekurzív)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "Az IPN belső cikkszámnak illeszkednie kell a {pattern} regex mintára"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Alkatrész nem lehes saját magának verziója"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Nem lehet olyan alkatrészből új verziót csinálni ami már eleve egy verzió"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Verzió kódot meg kell adni"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Verziók csak összeállított alkatrészeknél engedélyezettek"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Nem lehet sablon alkatrészből új verziót csinálni"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "A szülő alkatrésznek azonos sablonra kell mutatnia"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Létezik már készlet tétel ilyen a sorozatszámmal"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Azonos IPN nem engedélyezett az alkatrészekre, már létezik ilyen"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Adott alkatrész verzióból már létezik egy."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Ilyen nevű, IPN-ű és reviziójú alkatrész már létezik."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Szerkezeti kategóriákhoz nem lehet alkatrészeket rendelni!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Alkatrész neve"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Sablon-e"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Ez egy sablon alkatrész?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Ez az alkatrész egy másik változata?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Ebből a sablonból"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Alkatrész leírása (opcionális)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Kulcsszavak"
-#: part/models.py:1159
+#: part/models.py:1140
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:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Alkatrész kategória"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN (Belső Cikkszám)"
-#: part/models.py:1184
+#: part/models.py:1165
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:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Változat"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Ez egy másik alkatrész egy verziója?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Ennek a verziója"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Alapban hol tároljuk ezt az alkatrészt?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Alapértelmezett beszállító"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Alapértelmezett beszállítói alkatrész"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Alapértelmezett lejárat"
-#: part/models.py:1266
+#: part/models.py:1247
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:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimális készlet"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Minimálisan megengedett készlet mennyiség"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Alkatrész mértékegysége"
-#: part/models.py:1291
+#: part/models.py:1272
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:1297
+#: part/models.py:1278
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:1303
+#: part/models.py:1284
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:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Lehet ehhez az alkatrészhez több ellenőrzési eredményt rögzíteni?"
-#: part/models.py:1315
+#: part/models.py:1296
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:1321
+#: part/models.py:1302
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:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Aktív-e ez az alkatrész?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Lezárt alkatrészt nem lehet szerkeszteni"
-#: part/models.py:1337
+#: part/models.py:1318
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:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "Alkatrészjegyzék ellenőrizve"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Az alkatrész anyagjegyzéke érvényes?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Alkatrészjegyzék ellenőrző összeg"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Tárolt alkatrészjegyzék ellenőrző összeg"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Alkatrészjegyzéket ellenőrizte"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Alkatrészjegyzék ellenőrzési dátuma"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Létrehozó"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Alkatrész felelőse"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Több értékesítése"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Árszámítások gyorstárazásához használt pénznem"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimum alkatrészjegyzék költség"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Összetevők minimum költsége"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maximum alkatrészjegyzék költség"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Összetevők maximum költsége"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimum beszerzési ár"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Eddigi minimum beszerzési költség"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maximum beszerzési ár"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Eddigi maximum beszerzési költség"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimum belső ár"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Minimum költség a belső ársávok alapján"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maximum belső ár"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Maximum költség a belső ársávok alapján"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Minimum beszállítói ár"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Minimum alkatrész ár a beszállítóktól"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Maximum beszállítói ár"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Maximum alkatrész ár a beszállítóktól"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Minimum alkatrészváltozat ár"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Alkatrészváltozatok számolt minimum költsége"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Maximum alkatrészváltozat ár"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Alkatrészváltozatok számolt maximum költsége"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimum költség"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Minimum költség felülbírálása"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maximum költség"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Maximum költség felülbírálása"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Számított általános minimum költség"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Számított általános maximum költség"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Minimum eladási ár"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Minimum eladási ár az ársávok alapján"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Maximum eladási ár"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Maximum eladási ár az ársávok alapján"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Minimum eladási költség"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Eddigi minimum eladási ár"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Maximum eladási költség"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Eddigi maximum eladási ár"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Leltározható alkatrész"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Tételszám"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Egyedi készlet tételek száma a leltárkor"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Teljes készlet a leltárkor"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Dátum"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Leltározva ekkor"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Minimum készlet érték"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Becsült minimum raktárkészlet érték"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maximum készlet érték"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Becsült maximum raktárkészlet érték"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Alkatrész értékesítési ársáv"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Alkatrész Teszt Sablon"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Hibás sablon név - legalább egy alfanumerikus karakter kötelező"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Teszt sablont csak ellenőrizhetőre beállított alkatrészhez lehet csinálni"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Már létezik ilyen azonosítójú Teszt sablon ehhez az alkatrészhez"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Teszt név"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Add meg a teszt nevét"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Teszt azonosító"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Egyszerűsített Teszt azonosító"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Teszt leírása"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Adj hozzá egy leírást ehhez a teszthez"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Teszt engedélyezve?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Kötelező"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Szükséges-e hogy ez a teszt sikeres legyen?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Kötelező érték"
-#: part/models.py:3781
+#: part/models.py:3762
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:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Kötelező melléklet"
-#: part/models.py:3788
+#: part/models.py:3769
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:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Választható lehetőségek ehhez a Teszthez (vesszővel elválasztva)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "Alkatrészjegyzék nem szerkeszthető mert az összeállítás le van zárva"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "Alkatrészjegyzék nem szerkeszthető mert az összeállítás változat le van zárva"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Szülő alkatrész kiválasztása"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Al alkatrész"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Ez az alkatrészjegyzék tétel opcionális"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Ez az alkatrészjegyzék tétel fogyóeszköz (készlete nincs követve a gyártásban)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Beállítás mennyiség"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "A gyártáshoz szükséges extra mennyiség, a beállási veszteséggel együtt"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Veszteség"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Becsült veszteség egy gyártásnál, százalékban kifejezve (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Kerekítési többszörös"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "A szükséges termelési mennyiség az érték legközelebbi többszöröséhez kerekítése"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Alkatrészjegyzék tétel azonosító"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Alkatrészjegyzék tétel megjegyzései"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Ellenőrző összeg"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Alkatrészjegyzék sor ellenőrző összeg"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Jóváhagyva"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Ez a BOM tétel jóvá lett hagyva"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Öröklődött"
-#: part/models.py:4095
+#: part/models.py:4088
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:4101
+#: part/models.py:4094
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:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
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:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Al alkatrészt kötelező megadni"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Alkatrészjegyzék tétel helyettesítő"
-#: part/models.py:4392
+#: part/models.py:4385
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:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Szülő alkatrészjegyzék tétel"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Helyettesítő alkatrész"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "1.rész"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "2.rész"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Válassz kapcsolódó alkatrészt"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Kapcsolati megjegyzés"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Alkatrész kapcsolat nem hozható létre önmagával"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Már létezik duplikált alkatrész kapcsolat"
@@ -6466,203 +6470,199 @@ msgstr "Van már ilyen gyártói alkatrész"
msgid "Supplier part matching this SKU already exists"
msgstr "Van már ilyen beszállítói alkatrész"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Kategória neve"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Gyártásban"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Az alkatrészből jelenleg ennyi van gyártás alatt"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "Már beütemezett de még nem kész gyártási mennyiség"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Készlet tételek"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Verziók"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Beszállítók"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Teljes készlet"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Nem lefoglalt készlet"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Variánsok Raktárkészlet"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Alkatrész másolása"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Kezdeti adatok másolása egy másik alkatrészről"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Kezdeti készlet"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Kezdeti készlet mennyiség létrehozása"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Beszállító információ"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Kezdeti beszállító adatok hozzáadása"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Kategória paraméterek másolása"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Paraméter sablonok másolása a kiválasztott alkatrész kategóriából"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Meglévő kép"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "A meglévő alkatrész képfájl neve"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "A képfájl nem létezik"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Teljes alkatrészjegyzék jóváhagyása"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Gyártható"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Gyártásokhoz szükséges"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Gyártási rendelésekhez foglalva"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Értékesítési rendeléshez szükséges"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Értékesítési rendeléshez lefoglalva"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Minimum ár"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Számított minimum ár felülbírálása"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Minimum ár pénzneme"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Maximum ár"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Számított maximum ár felülbírálása"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Maximum ár pénzneme"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Frissítés"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Alkatrész árak frissítése"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Megadott pénznem átváltása {default_currency}-re sikertelen"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "A Minimum ár nem lehet nagyobb mint a Maximum ár"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "A Maximum ár nem lehet kisebb mint a Minimum ár"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Szülő összeállítás kiválasztása"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Összetevő alkatrész kijelölése"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Válassz alkatrészt ahonnan az alkatrészjegyzéket másoljuk"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Létező adat törlése"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
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:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Örököltekkel együtt"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
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:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Hibás sorok kihagyása"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Engedély a hibás sorok kihagyására"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Helyettesítő alkatrészek másolása"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
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"
@@ -6733,108 +6733,108 @@ msgstr "Nincs megadva művelet"
msgid "No matching action found"
msgstr "Nincs egyező művelet"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Nincs egyező vonalkód"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Egyezés vonalkódra"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Model nem támogatott"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Model példány hiányzik"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Ez a vonalkód már egy másik tételé"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Nem található megfelelő alkatrész adat"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Nem található megfelelő beszállítói alkatrész"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Több beszállítói alkatrész található"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Nincsen vonalkód adathoz illeszkedő plugin"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Beszállítói alkatrész található"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Ez a termék már bevételezve"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "A szállítói vonalkódhoz nincsen plugin találat"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Több egyező sortétel is található"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Nincs egyező sortétel"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Nincs értékesítési rendelés biztosítva"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Vonalkód nem egyezik egy létező készlet tétellel sem"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Készlet tétel nem egyezik a sortétellel"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Nincs elegendő"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Készlet tétel lefoglalva egy vevői rendeléshez"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Nincs elég információ"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Megtalált tétel"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Szállítói alkatrész nem illik a sortételhez"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Sortétel már elkészült"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "A tétel bevételezéséhez további információ szükséges"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Beszerzési rendelés tétele bevételezve"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Nem sikerült a sortételt érkeztetni"
@@ -6973,7 +6973,7 @@ msgstr "Alapvető vonalkód támogatást ad"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7071,111 +7071,111 @@ msgstr "Visszadátumozott rendelések kibocsátása"
msgid "Automatically issue orders that are backdated"
msgstr "Automatikusan kibocsátja a visszadátumozott rendeléseket"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Szintek"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "Az exportálandó alkatrészek mélysége. Nullával a teljes bom összes szintjét listázza"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Teljes mennyiség"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "Adott alkatrész teljes mennyiségét mutassa az összes alkatrésznél a BOM-ban"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Készlet adatok"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Tartalmazza az alkatrész készlet adatait"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Árazási adatok"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Tartalmazza az alkatrész árazási adatait"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Beszállítói adatok"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Tartalmazza a beszállítói adatokat"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Gyártói adatok"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Tartalmazza a gyártói adatokat"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Helyettesítő adatok"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Tartalmazza a helyettesítő alkatrész adatokat"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Paraméter adat"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Tartalmazza az alkatrész paraméter adatokat"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Többszintű alkatrészjegyzék exportáló"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Támogatja a többszintű BOM-ok exportját"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "Alkatrészjegyzék szint"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Helyettesítő {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Beszállító {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "Beszállítói {n} raktári cikkszám"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "Beszállítói {n} gyártói cikkszám"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Gyártó {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "Gyártó {n} MPN"
@@ -7190,19 +7190,19 @@ msgstr "InvenTree exportálás támogatása"
#: plugin/builtin/exporter/parameter_exporter.py:16
msgid "Exclude Inactive"
-msgstr ""
+msgstr "Inaktívak Kizárása"
#: plugin/builtin/exporter/parameter_exporter.py:17
msgid "Exclude parameters which are inactive"
-msgstr ""
+msgstr "Inaktív paraméterek kizárása"
#: plugin/builtin/exporter/parameter_exporter.py:29
msgid "Parameter Exporter"
-msgstr ""
+msgstr "Paraméter Exportáló"
#: plugin/builtin/exporter/parameter_exporter.py:30
msgid "Exporter for model parameter data"
-msgstr ""
+msgstr "Exportáló modell paraméter adatokhoz"
#: plugin/builtin/exporter/stocktake_exporter.py:25
msgid "Include External Stock"
@@ -7355,11 +7355,11 @@ msgstr "InvenTree címkenyomtató"
msgid "Provides support for printing using a machine"
msgstr "Nyomtatási támogatást nyújt egy Berendezés által"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "utoljára használva"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Opciók"
@@ -8073,7 +8073,7 @@ msgstr "Összesen"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Sorozatszám"
@@ -8143,7 +8143,7 @@ msgstr "A képfile nem található"
msgid "part_image tag requires a Part instance"
msgstr "part_image elem csak alkatrész példánynál használható"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "company_image elem csak cég példánynál használható"
@@ -8159,7 +8159,7 @@ msgstr "Csúcs készlethelyre szűrés"
msgid "Include sub-locations in filtered results"
msgstr "Szűrt eredmények tartalmazzák az alhelyeket"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Szülő hely"
@@ -8285,20 +8285,20 @@ msgstr "Sorozatszámot nem lehet megadni nem követésre kötelezett alkatrész
#: stock/api.py:1396
msgid "Include Installed"
-msgstr ""
+msgstr "Beépítettek Belefoglalása"
#: stock/api.py:1398
msgid "If true, include test results for items installed underneath the given stock item"
-msgstr ""
+msgstr "Ha igaz, tartalmazza a megadott készlettétel alá beépített tételek teszteredményeit"
#: stock/api.py:1405
msgid "Filter by numeric Stock Item ID"
-msgstr ""
+msgstr "Szűrés numerikus készlettétel azonosító szerint"
#: stock/api.py:1426
#, python-brace-format
msgid "Stock item with ID {id} does not exist"
-msgstr ""
+msgstr "A(z) {id} azonosítójú készlettétel nem létezik"
#: stock/models.py:71
msgid "Stock Location type"
@@ -8312,314 +8312,314 @@ msgstr "Készlethely típusok"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Alapértelmezett ikon azokhoz a helyekhez, melyeknek nincs ikonja beállítva (válaszható)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Készlet hely"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Készlethelyek"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Tulajdonos"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Tulajdonos kiválasztása"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "A szerkezeti raktári helyekre nem lehet direktben raktározni, csak az al-helyekre."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Külső"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Ez egy külső készlethely"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Helyszín típusa"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Tárolóhely típus"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Nem lehet ezt a raktári helyet szerkezetivé tenni, mert már vannak itt tételek!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "a(z) {field} nem létezik"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Alkatrész kiválasztása kötelező"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "A szerkezeti raktári helyre nem lehet készletet felvenni!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Virtuális alkatrészből nem lehet készletet létrehozni"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "A beszállítói alkatrész típusa ('{self.supplier_part.part}') mindenképpen {self.part} kellene, hogy legyen"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
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:961
+#: stock/models.py:947
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:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "A tétel nem tartozhat saját magához"
-#: stock/models.py:988
+#: stock/models.py:974
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:1001
+#: stock/models.py:987
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:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Szülő készlet tétel"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Kiindulási alkatrész"
-#: stock/models.py:1037
+#: stock/models.py:1023
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:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Hol található ez az alkatrész?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
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:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Beépítve ebbe"
-#: stock/models.py:1068
+#: stock/models.py:1054
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:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Sorozatszám ehhez a tételhez"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Batch kód ehhez a készlet tételhez"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Készlet mennyiség"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Forrás gyártás"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Gyártás ehhez a készlet tételhez"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Felhasználva ebben"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Felhasználva ebben a gyártásban"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Forrás beszerzési rendelés"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Beszerzés ehhez a készlet tételhez"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Cél vevői rendelés"
-#: stock/models.py:1162
+#: stock/models.py:1148
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:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Törlés ha kimerül"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Készlet tétel törlése ha kimerül"
-#: stock/models.py:1202
+#: stock/models.py:1188
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:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Alkatrésszé alakítva"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "Mennyiség meghaladja az elérhető készletet"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Az alkatrész nem követésre kötelezett"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Mennyiség egész szám kell legyen"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "A mennyiség nem haladhatja meg az elérhető készletet ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Sorozatszámokat listában kell megadni"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "A mennyiség nem egyezik a megadott sorozatszámok számával"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
-msgstr ""
+msgstr "Nem lehet készletet strukturális helyre rendelni"
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Ez a Teszt sablon nem létezik"
-#: stock/models.py:2047
+#: stock/models.py:2033
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:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Készlet tétel beépül egy másikba"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "A készlet tétel más tételeket tartalmaz"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Készlet tétel hozzárendelve egy vevőhöz"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Készlet tétel gyártás alatt"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Követésre kötelezett készlet nem vonható össze"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Duplikált készlet tételek vannak"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "A készlet tétel ugyanarra az alkatrészre kell vonatkozzon"
-#: stock/models.py:2082
+#: stock/models.py:2068
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:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Készlet tételek állapotainak egyeznie kell"
-#: stock/models.py:2366
+#: stock/models.py:2352
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:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Készlettörténet"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Bejegyzés megjegyzései"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Készlet Tétel Ellenőrzés Eredménye"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Ehhez a teszthez meg kell adni értéket"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Ehhez a teszthez fel kell tölteni mellékletet"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "A teszt eredménye érvénytelen"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Teszt eredménye"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Teszt kimeneti értéke"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Teszt eredmény melléklet"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Tesztek megjegyzései"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Teszt állomás"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "A tesztet elvégző tesztállomás azonosítója"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Elkezdődött"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "A teszt indításának időpontja"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Befejezve"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "A teszt befejezésének időpontja"
@@ -8663,43 +8663,43 @@ msgstr "Válassza ki az alkatrészt amihez sorozatszámot akar generálni"
msgid "Quantity of serial numbers to generate"
msgstr "Hány sorozatszámot generáljunk"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Az eredmény Teszt sablonja"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr "Ehhez az alkatrészhez nem tartozik ellenőrzés"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "Sablon azonosító vagy Teszt név szükséges"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "A tesztet nem lehet a kezdésnél hamarabb befejezni"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Szülő tétel"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Szülő készlet tétel"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Csomagolási mennyiség használata: a megadott mennyiség ennyi csomag"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "Csomagméret használata"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Írd be a sorozatszámokat az új tételekhez"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Beszállítói Cikkszám"
@@ -8733,8 +8733,8 @@ msgstr "Nincsen készlettétel megadva"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "A mennyiség nem lépheti túl a rendelkezésre álló készletet ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Cél készlet hely"
@@ -8806,103 +8806,103 @@ msgstr "Válaszd ki a státuszváltásra szánt készlet tételeket"
msgid "No stock items selected"
msgstr "Nincs készlet tétel kiválasztva"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Alhelyek"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Felsőbb szintű készlet hely"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Az alkatrésznek értékesíthetőnek kell lennie"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "A tétel egy vevő rendeléshez foglalt"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "A tétel egy gyártási utasításhoz foglalt"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Vevő akihez rendeljük a készlet tételeket"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "A kiválasztott cég nem egy vevő"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Készlet hozzárendelés megjegyzései"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "A készlet tételek listáját meg kell adni"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Készlet összevonás megjegyzései"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Nem egyező beszállítók megengedése"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
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:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Nem egyező állapotok megjelenítése"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
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:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Legalább két készlet tételt meg kell adni"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Nincs változás"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Készlet tétel elsődleges kulcs értéke"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Készlettétel nincs készleten"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "Készlettétel már készleten van"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "Mennyiség nem lehet negatív"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Készlet tranzakció megjegyzései"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "Meglévő készletbe olvasztás"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "Visszaérkezett tételek beolvasztása a készlettételekbe ha lehetséges"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Következő sorozatszám"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Előző Sorozatszám"
@@ -8960,7 +8960,7 @@ msgstr "Készlet manuálisan elvéve"
#: stock/status_codes.py:56
msgid "Serialized stock items"
-msgstr ""
+msgstr "Sorozatszámos készlettételek"
#: stock/status_codes.py:58
msgid "Returned to stock"
@@ -9384,83 +9384,83 @@ msgstr "Vevői rendelések"
msgid "Return Orders"
msgstr "Visszavételek"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Felhasználónév"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Keresztnév"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "A felhasználó keresztneve"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Vezetéknév"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "A felhasználó vezetékneve"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "A felhasználó e-mail címe"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Személyzet"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Van-e a felhasználónak személyzeti jogosultsága"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Rendszergazda"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "A felhasználó rendszergazda-e"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Aktív a felhasználói fiók"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Csak rendszergazda szerkesztheti ezt a mezőt"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Jelszó"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Felhasználó jelszava"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "Figyelmezetés felülbírálása"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "A jelszó szabályok figyelmeztetésének felülbírálata"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "Nincs jogosultsága felhasználót létrehozni"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "A fiókod sikeresen létrejött."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Kérlek használd a jelszó visszállítás funkciót a belépéshez"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Üdvözlet az InvenTree-ben"
diff --git a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po
index ca51f6e4a5..8582153a83 100644
--- a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API endpoint tidak ditemukan"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Daftar item atau filter harus disediakan untuk Pekerjaan Banyak"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Barang harus disediakan sebagai daftar"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Pengguna tidak memiliki izin untuk melihat model ini"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Jumlah yang diberikan tidak valid"
@@ -112,13 +112,13 @@ msgstr "Masukkan tanggal"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Catatan"
@@ -171,35 +171,35 @@ msgstr "Hapus tag-tag HTML dari nilai ini"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Koneksi Galat"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Ukuran gambar terlalu besar"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "URL yang diberikan bukan file gambar yang valid"
@@ -207,11 +207,11 @@ msgstr "URL yang diberikan bukan file gambar yang valid"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Surel"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Anda harus mengaktifkan autentikasi dua faktor sebelum melakukan hal lainnya."
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Pilihan tidak valid"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nama"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Keterangan"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Keterangan (opsional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Direktori"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Data Barcode"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Data barcode pihak ketiga"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hash unik data barcode"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Sudah ada barcode yang sama"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Terjadi Kesalahan Server"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Sebuah kesalahan telah dicatat oleh server."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Harus berupa angka yang valid"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Mata Uang"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Nilai tidak valid"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL file gambar external"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Unduhan gambar dari URL external tidak aktif"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr "Bukan kode mata uang yang valid"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr "Produksi Induk"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Bagian"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Pesanan harus dibatalkan sebelum dapat dihapus"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Tersedia"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Order Produksi"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Lokasi"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Referensi Order Produksi"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referensi Order Penjualan"
msgid "SalesOrder to which this build is allocated"
msgstr "Order penjualan yang teralokasikan ke pesanan ini"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Lokasi Sumber"
@@ -857,17 +857,17 @@ msgstr "Status pembuatan"
msgid "Build status code"
msgstr "Kode status pembuatan"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Kode Kelompok"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Kode kelompok untuk hasil produksi ini"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Tanggal Pembuatan"
@@ -887,7 +887,7 @@ msgstr "Target tanggal selesai"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Target tanggal selesai produksi. Produksi akan menjadi terlambat setelah tanggal ini."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Tanggal selesai"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Pengguna yang menyerahkan order ini"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Penanggung Jawab"
@@ -913,12 +913,12 @@ msgstr "Penanggung Jawab"
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Tautan eksternal"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Tautan menuju URL eksternal"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr "Hasil produksi sudah selesai"
msgid "Build output does not match Build Order"
msgstr "Hasil produksi tidak sesuai dengan order produksi"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Jumlah harus lebih besar daripada nol"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "Jumlah"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Item produksi harus menentukan hasil produksi karena bagian utama telah ditandai sebagai dapat dilacak"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Jumlah harus 1 untuk stok dengan nomor seri"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Item stok teralokasikan terlalu banyak"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Jumlah yang dialokasikan harus lebih dari nol"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Jumlah harus 1 untuk stok dengan nomor seri"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Stok Item"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Sumber stok item"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Jumlah stok yang dialokasikan ke produksi"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Pasang ke"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Tujuan stok item"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Hasil Produksi"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Hasil produksi tidak sesuai dengan produksi induk"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Hasil bagian tidak sesuai dengan bagian dalam order produksi"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Hasil produksi ini sudah diselesaikan"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Hasil produksi tidak dialokasikan sepenuhnya"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Masukkan jumlah hasil pesanan"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Jumlah bagian yang dapat dilacak harus berupa angka bulat"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Jumlah harus angka bulat karena terdapat bagian yang dapat dilacak dalam daftar barang"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Nomor Seri"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Masukkan nomor seri untuk hasil pesanan"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Alokasikan nomor seri secara otomatis"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Alokasikan item yang diperlukan dengan nomor seri yang sesuai secara otomatis"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Nomor-nomor seri berikut sudah ada atau tidak valid"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Daftar hasil pesanan harus disediakan"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Lokasi hasil pesanan yang selesai"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Terima Alokasi Tidak Lengkap"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Tidak diizinkan"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Terima Tidak Teralokasikan"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Terima bahwa stok item tidak teralokasikan sepenuhnya ke pesanan ini"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Stok yang diperlukan belum teralokasikan sepenuhnya"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Terima Tidak Selesai"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Terima bahwa jumlah hasil produksi yang diperlukan belum selesai"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Jumlah produksi yang diperlukan masih belum cukup"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Order memiliki hasil produksi yang belum dilengkapi"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Hasil produksi"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Hasil pesanan harus mengarah ke pesanan yang sama"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part harus mengarah ke bagian yang sesuai dengan order produksi"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Item harus tersedia dalam stok"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Jumlah tersedia ({q}) terlampaui"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Hasil produksi harus ditentukan untuk mengalokasikan bagian yang terlacak"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Hasil produksi tidak dapat ditentukan untuk alokasi barang yang tidak terlacak"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Item yang dialokasikan harus disediakan"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Lokasi stok, dari mana bahan/bagian akan diambilkan (kosongkan untuk mengambil dari lokasi mana pun)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Lokasi tidak termasuk"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Jangan ambil stok item dari lokasi yang dipilih"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Stok bergantian"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Item stok di beberapa lokasi dapat digunakan secara bergantian"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Stok pengganti"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Izinkan alokasi bagian pengganti"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Item tagihan material"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Pengguna"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Harga"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktif"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Judul"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Tautan"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Kesimpulan"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Berkas Gambar"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Lampiran"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "File tidak ditemukan"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Tautan eksternal tidak ditemukan"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Pilih file untuk dilampirkan"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Komentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Ukuran Berkas"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Label"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Terbuat"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Pilihan"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Aktif"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Respon"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Barang diterima"
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nama File"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nama Perusahaan"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "Hari"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponen"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Aktifkan Laporan"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Ukuran Halaman"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Surel diperlukan"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Aktifkan Integrasi Antarmuka"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Perusahaan"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr "Kontak alamat surel"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontak"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Kode Pos"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Tidak diketahui"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Selesai"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Total Harga"
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Pelanggan"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Jumlah yang dialokasikan harus lebih dari nol"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "Order ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Salin Baris"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Tanggal"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Harga Minimal"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Harga Maksimal"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Perbarui"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "Tidak ada tindakan yang ditentukan"
msgid "No matching action found"
msgstr "Aksi tidak ditemukan"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Tidak cukup informasi"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Nomor Seri"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Lampiran perlu diunggah untuk tes ini"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nama Pengguna"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Nama Depan"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Nama depan dari pengguna"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Nama Belakang"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Nama belakang dari pengguna"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Alamat surel dari pengguna"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Staf"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Selamat Datang di InvenTree"
diff --git a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po
index 0d2015f20d..b9eb3698cb 100644
--- a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Language: it_IT\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Endpoint API non trovato"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "L'elenco degli articoli o dei filtri devono essere forniti per le operazioni di massa"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Gli articoli devono essere forniti come elenco"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Lista elementi fornita non valida"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "I filtri devono essere forniti come dizionario"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Filtri forniti non validi"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Tutti i filtri devono essere usati solo con true"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Nessun elemento corrisponde ai criteri forniti"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Nessun dato fornito"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr "Questo campo deve essere unico."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "L'utente non ha i permessi per vedere questo modello"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Impossibile convertire {original} in {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Quantità inserita non valida"
@@ -112,13 +112,13 @@ msgstr "Inserisci la data"
msgid "Invalid decimal value"
msgstr "Valore decimale non valido"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Note"
@@ -171,35 +171,35 @@ msgstr "Rimuovi i tag HTML da questo valore"
msgid "Data contains prohibited markdown content"
msgstr "I dati contengono un contenuto in markdown proibito"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Errore di connessione"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Il server ha risposto con un codice di stato non valido"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Si è verificata un'eccezione"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Il server ha risposto con valore Content-Length non valido"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Immagine troppo grande"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Il download dell'immagine ha superato la dimensione massima"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Il server remoto ha restituito una risposta vuota"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "L'URL fornito non è un file immagine valido"
@@ -207,11 +207,11 @@ msgstr "L'URL fornito non è un file immagine valido"
msgid "Log in to the app"
msgstr "Accedi all'app"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Email"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Devi abilitare l'autenticazione a due fattori prima di fare qualsiasi altra cosa."
@@ -255,135 +255,135 @@ msgstr "Il campo deve corrispondere al modello richiesto"
msgid "Reference number is too large"
msgstr "Numero di riferimento troppo grande"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Scelta non valida"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nome"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Descrizione"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Descrizione (opzionale)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Percorso"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Nomi duplicati non possono esistere sotto lo stesso genitore"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Note di Markdown (opzionale)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Dati del Codice a Barre"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Dati Codice a Barre applicazioni di terze parti"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Codice a Barre"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Codice univoco del codice a barre"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Trovato codice a barre esistente"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Fallimento Attività"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Attività di lavoro in background '{f}' fallita dopo {n} tentativi"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Errore del server"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Un errore è stato loggato dal server."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Immagine"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Deve essere un numero valido"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Selezionare la valuta dalle opzioni disponibili"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Questo campo non può essere nullo."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Valore non valido"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Immagine Remota"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL del file immagine remota"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Il download delle immagini da URL remoto non è abilitato"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Impossibile scaricare l'immagine dall'URL remoto"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "Formato tipo di contenuto non valido"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "Tipo di Contenuto non trovato"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "Il tipo di contenuto non corrisponde alla classe mixin richiesta"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -553,8 +553,8 @@ msgstr "Unità fisica non valida"
msgid "Not a valid currency code"
msgstr "Non è un codice valuta valido"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Stato dell'ordine"
@@ -562,21 +562,21 @@ msgstr "Stato dell'ordine"
msgid "Parent Build"
msgstr "Produzione Genitore"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Includi Varianti"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Includi Varianti"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Includi Varianti"
msgid "Part"
msgstr "Articolo"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Categoria"
@@ -666,80 +666,80 @@ msgstr "Data massima"
msgid "Exclude Tree"
msgstr "Escludi Albero"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "La produzione deve essere annullata prima di poter essere eliminata"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Consumabile"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opzionale"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Assemblaggio"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Monitorato"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testabile"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Ordine In Corso"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Allocato"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Utilizzato"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Disponibile"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Ordinato"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Ordine di Produzione"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Posizione"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Output"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "Filtra per ID articolo stock di output. Usa 'null' per trovare elementi di produzione disinstallati."
@@ -779,9 +779,9 @@ msgstr "La data di scadenza deve essere successiva alla data d'inizio"
msgid "Build Order Reference"
msgstr "Riferimento Ordine Di Produzione"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Numero di riferimento ordine di vendita"
msgid "SalesOrder to which this build is allocated"
msgstr "Ordine di vendita a cui questa produzione viene assegnata"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Posizione Di Origine"
@@ -857,17 +857,17 @@ msgstr "Stato Produzione"
msgid "Build status code"
msgstr "Codice stato di produzione"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Codice Lotto"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Codice del lotto per questa produzione"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Data di creazione"
@@ -887,7 +887,7 @@ msgstr "Data completamento obiettivo"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Data di completamento della produzione. Dopo tale data la produzione sarà in ritardo."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Data di completamento"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Utente che ha emesso questo ordine di costruzione"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Responsabile"
@@ -913,12 +913,12 @@ msgstr "Responsabile"
msgid "User or group responsible for this build order"
msgstr "Utente o gruppo responsabile di questo ordine di produzione"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Collegamento esterno"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link a URL esterno"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Priorità di questo ordine di produzione"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Codice del progetto"
@@ -960,7 +960,7 @@ msgstr "L'ordine di produzione {build} è stato completato"
msgid "A build order has been completed"
msgstr "L'ordine di produzione è stato completato"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Deve essere fornita un numero di serie per gli articoli rintracciabili"
@@ -976,23 +976,23 @@ msgstr "La produzione è stata completata"
msgid "Build output does not match Build Order"
msgstr "L'output della produzione non corrisponde all'ordine di compilazione"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "La quantità deve essere maggiore di zero"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "La quantità non può essere maggiore della quantità in uscita"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "La produzione non ha superati tutti i test richiesti"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "L'output della build {serial} non ha superato tutti i test richiesti"
@@ -1001,18 +1001,18 @@ msgstr "L'output della build {serial} non ha superato tutti i test richiesti"
msgid "Cannot partially complete a build output with allocated items"
msgstr "Impossibile completare parzialmente un build output con gli elementi assegnati"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Elemento di Riga Ordine di Produzione"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Crea oggetto"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Crea oggetto"
msgid "Quantity"
msgstr "Quantità"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Quantità richiesta per l'ordine di costruzione"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Quantità di articoli magazzino consumate"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "L'elemento di compilazione deve specificare un output poiché la parte principale è contrassegnata come rintracciabile"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "L'articolo in stock selezionato non corrisponde alla voce nella BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "La quantità deve essere 1 per lo stock serializzato"
+
+#: build/models.py:1869
#, 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:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "L'articolo in giacenza è sovrallocato"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "La quantità di assegnazione deve essere maggiore di zero"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "La quantità deve essere 1 per lo stock serializzato"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "L'articolo in stock selezionato non corrisponde alla voce nella BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "La quantità assegnata supera la quantità disponibile a magazzino"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Articoli in magazzino"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Origine giacenza articolo"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Quantità di magazzino da assegnare per la produzione"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Installa in"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Destinazione articolo in giacenza"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Livello Produzione"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nome Articolo"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Etichetta Codice Progetto"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Genera Output"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "L'output generato non corrisponde alla produzione principale"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "L'output non corrisponde alle parti dell'ordine di produzione"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Questa produzione è stata già completata"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Questo output non è stato completamente assegnato"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Inserisci la quantità per l'output di compilazione"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Quantità totale richiesta per articoli rintracciabili"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantità totale richiesta, poiché la fattura dei materiali contiene articoli rintracciabili"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Codice Seriale"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Inserisci i numeri di serie per gli output di compilazione (build option)"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Posizione dello stock per l'output della produzione"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Numeri di Serie Assegnazione automatica"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Assegna automaticamente gli articoli richiesti con i numeri di serie corrispondenti"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "I seguenti numeri di serie sono già esistenti o non sono validi"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Deve essere fornito un elenco dei risultati di produzione"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Posizione dello stock per l'output di produzione rimosso"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Scarta Assegnazioni"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Scartare tutte le assegnazioni di magazzino per gli output rimossi"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Motivo dell'eliminazione degli output di compilazione"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Posizione per gli output di build completati"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Accetta Assegnazione Incompleta"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Completa l'output se le scorte non sono state interamente assegnate"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Consuma Giacenze Allocate"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Consuma tutte le scorte che sono già state assegnate a questa produzione"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Rimuovi Output Incompleti"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Elimina gli output di produzione che non sono stati completati"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Non permesso"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Accetta come consumato da questo ordine di produzione"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Non assegnare prima di aver completato questo ordine di produzione"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Giacenza in eccesso assegnata"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Come si desidera gestire gli elementi extra giacenza assegnati all'ordine di produzione"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Alcuni articoli di magazzino sono stati assegnati in eccedenza"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Accetta Non Assegnato"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Accetta che gli elementi in giacenza non sono stati completamente assegnati a questo ordine di produzione"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "La giacenza richiesta non è stata completamente assegnata"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Accetta Incompleta"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Accetta che il numero richiesto di output di produzione non sia stato completato"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "La quantità di produzione richiesta non è stata completata"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "L'ordine di costruzione ha ancora degli ordini di costruzione figli"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "L'ordine di costruzione deve essere in stato di produzione"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "L'ordine di produzione ha output incompleti"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Linea di produzione"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Genera Output"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "L'output di produzione deve puntare alla stessa produzione"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Articolo linea di produzione"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "gli elementi degli articoli della distinta base devono puntare alla stessa parte dell'ordine di produzione"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "L'articolo deve essere disponibile"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantità disponibile ({q}) superata"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "L'output di produzione deve essere specificato per l'ubicazione delle parti tracciate"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "L'output di produzione non deve essere specificato per l'ubicazione delle parti non tracciate"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Deve essere indicata l'allocazione dell'articolo"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Posizione dello stock in cui le parti devono prelevate (lasciare vuoto per prelevare da qualsiasi luogo)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Escludi Ubicazione"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Escludi gli elementi stock da questa ubicazione selezionata"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Scorte Intercambiabili"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Gli elementi in magazzino in più sedi possono essere utilizzati in modo intercambiabile"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Sostituisci Giacenze"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Consenti l'allocazione delle parti sostitutive"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Articoli Opzionali"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Assegna gli elementi opzionali della distinta base all'ordine di produzione"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Impossibile avviare l'attività di auto-allocazione"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Riferimento BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "Identificativo dell'Articolo BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Nome Articolo BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Costruzione"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Articolo Fornitore"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Quantità assegnata"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Riferimento Ordine Di Costruzione"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Nome Categoria Articolo"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Tracciabile"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Ereditato"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Consenti Le Varianti"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Distinta base (Bom)"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "In Produzione"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Pianificato per la produzione"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Scorte esterne"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Disponibilità in magazzino"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Disponibili scorte alternative"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Disponibili varianti delle scorte"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "La quantità consumata supera la quantità assegnata"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Note facoltative per il consumo di magazzino"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "L'articolo prodotto deve puntare all'ordine di produzione corretto"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Duplica l'allocazione degli articoli da produrre"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "La riga di produzione deve puntare all'ordine di produzione corretto"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Duplica l'allocazione della riga di produzione"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Deve essere fornita almeno un articolo o riga"
@@ -1498,19 +1490,19 @@ msgstr "Ordine di produzione in ritardo"
msgid "Build order {bo} is now overdue"
msgstr "L'ordine di produzione {bo} è in ritardo"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "È Un Connegamento"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "E' un file"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "L'utente non ha il permesso di eliminare questi allegati"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "L'utente non ha il permesso di eliminare questo allegato"
@@ -1530,7 +1522,11 @@ msgstr "Nessun codice valuta valido fornito"
msgid "No plugin"
msgstr "Nessun plugin"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Etichetta Codice Progetto"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Aggiornato"
@@ -1558,7 +1554,7 @@ msgstr "Descrizione del progetto"
msgid "User or group responsible for this project"
msgstr "Utente o gruppo responsabile di questo progetto"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Tasto impostazioni"
@@ -1590,550 +1586,550 @@ msgstr "Il valore non supera i controlli di convalida"
msgid "Key string must be unique"
msgstr "La stringa chiave deve essere univoca"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Utente"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Quantità prezzo limite"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Prezzo"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Prezzo unitario in quantità specificata"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Scadenza"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Scadenza in cui questa notifica viene ricevuta"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Nome per questa notifica"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Attivo"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "È questa notifica attiva"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token per l'accesso"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Segreto"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Segreto condiviso per HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID Messaggio"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Identificatore unico per questo messaggio"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Host"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Host da cui questo messaggio è stato ricevuto"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Intestazione"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Intestazione di questo messaggio"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Contenuto"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Contenuto di questo messaggio"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Scadenza in cui questo messaggio è stato ricevuto"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Lavorato il"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Il lavoro su questo messaggio è terminato?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Titolo"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Collegamento"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Pubblicato"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autore"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Riepilogo"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Letto"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Queste notizie sull'elemento sono state lette?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "File immagine"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Tipo di modello di destinazione per questa immagine"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "ID modello di destinazione per questa immagine"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Unità Personalizzata"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Il simbolo dell'unità deve essere univoco"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Il nome dell'unità deve essere un identificatore valido"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nome dell'unità"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Simbolo"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Simbolo unità opzionale"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definizione"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definizione unità"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Allegato"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "File mancante"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Link esterno mancante"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Tipo modello"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Tipo di modello di destinazione per l'immagine"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Seleziona file da allegare"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Commento"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Commento allegato"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Data caricamento"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Data di caricamento del file"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Dimensione file"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Dimensioni file in byte"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Tipo di modello specificato per l'allegato non valido"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Stato Personalizzato"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Stati Personalizzati"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Imposta Stato Di Riferimento"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Set di stato esteso con questo stato personalizzato"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Chiave Logica"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Chiave logica dello stato che è uguale a questo stato personalizzato nella logica commerciale"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Valore"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Valore numerico che verrà salvato nel database dei modelli"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Nome dello Stato"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etichetta"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etichetta che verrà visualizzata nel frontend"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Colore"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Colore che verrà visualizzato nel frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modello"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Modello a cui questo stato è associato"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Il modello deve essere selezionato"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "La chiave deve essere selezionata"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "La chiave logica deve essere selezionata"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "La chiave deve essere diversa dalla chiave logica"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Deve essere fornita una classe di stato di riferimento valida"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "La chiave deve essere diversa dalle chiavi logiche dello stato di riferimento"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "La chiave logica deve essere nelle chiavi logiche dello stato di riferimento"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Il nome deve essere diverso dai nomi dello stato di riferimento"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Elenco Selezioni"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Elenchi di Selezione"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Nome dell'elenco di selezione"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Descrizione della lista di selezione"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Bloccato"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Questa lista di selezione è bloccata?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Questo elenco di selezione può essere utilizzato?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Plugin Sorgente"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Plugin che fornisce l'elenco di selezione"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Stringa Sorgente"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Stringa opzionale che identifica il sorgente usato per questa lista"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Voce Predefinita"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Voce predefinita per questo elenco di selezione"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Creato"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Data e ora in cui è stato creato l'elenco di selezione"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Ultimo aggiornamento"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Data e ora in cui l'elenco di selezione è stato aggiornato"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Voce Lista Selezione"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Voci Lista Selezione"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Elenco di selezione a cui appartiene questa voce"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Valore della voce della lista di selezione"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Etichetta per la voce elenco di selezione"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Descrizione della voce della lista di selezione"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Questa voce della lista di selezione è attiva?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Modello Parametro"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "Modelli parametro"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "I parametri della casella di controllo non possono avere unità"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "I parametri della casella di controllo non possono avere scelte"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Le scelte devono essere uniche"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Il nome del modello del parametro deve essere univoco"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "Tipo di modello di destinazione per questo modello di parametro"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Nome Parametro"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Unità"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Unità fisiche per questo parametro"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Descrizione del parametro"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Casella di spunta"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Questo parametro è una casella di spunta?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Scelte"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Scelte valide per questo parametro (separato da virgola)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Lista di selezione per questo parametro"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Abilitato"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "Questo modello di parametro è abilitato?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "Parametro"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "Parametri"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Scelta non valida per il valore del parametro"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "Tipo di modello specificato per parametro non valido"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "ID Modello"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "ID del modello di destinazione per questo parametro"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Modello"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "Modello Parametro"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Dati"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Valore del Parametro"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Valore del Parametro"
msgid "Note"
msgstr "Nota"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Note opzionali elemento"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Scansione Codice A Barre"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Dati del Codice a Barre"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Utente che ha scannerizzato il codice a barre"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Data e ora"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Data e ora della scansione del codice a barre"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Endpoint URL che ha elaborato il codice a barre"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Contesto"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Dati contestuali per la scansione del codice a barre"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Risposta"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Dati di risposta dalla scansione del codice a barre"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Risultato"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "La scansione del codice a barre è riuscita?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Si è verificato un errore"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: La cancellazione del log email è protetta. Imposta INVENTREE_PROTECT_EMAIL_LOG a Falso per consentire la cancellazione."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "Messaggio email"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "Messaggi email"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Annunciato"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Inviato"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Fallito"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Consegnato"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Confermato"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Ricevuti"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "In uscita"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Nessuna risposta"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Traccia La Consegna"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Conferma di lettura"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Tracciare i clic delle email"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "ID Globale"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Identificatore per questo messaggio (potrebbe essere fornito da un sistema esterno)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "ID discussione"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Identificatore per questo thread del messaggio (potrebbe essere fornito da un sistema esterno)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Discussione"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Thread collegato a questo messaggio"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
-msgstr ""
+msgstr "Priorità"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Discussione Email"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Discussioni Email"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Chiave"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Chiave univoca per questa discussione (usata per identificare la discussione)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Identificatore univoco per questa discussione"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Avviato internamente"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Questa discussione è iniziata internamente?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Data e ora in cui la discussione è stata creata"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Data e ora in cui la discussione è stata aggiornata"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} cancellato"
msgid "A order that is assigned to you was canceled"
msgstr "Un ordine assegnato a te è stato annullato"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Elemento ricevuto"
@@ -2351,93 +2347,101 @@ msgstr "Gli elementi sono stati ricevuti a fronte di un ordine di acquisto"
msgid "Items have been received against a return order"
msgstr "Gli articoli sono stati ricevuti contro un ordine di reso"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Indica se l'impostazione è sovrascritta da una variabile ambiente"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Sovrascrivi"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "In Esecuzione"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Attività in sospeso"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Attività pianificate"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Attività Fallite"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID Attività"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "ID attività univoco"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Blocco"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Tempo di blocco"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nome attività"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funzione"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nome della funzione"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argomenti"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argomenti attività"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Argomenti Parole Chiave"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Argomenti parole chiave attività"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nome del file"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Tipo di modello"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "L'utente non ha il permesso di creare o modificare allegati per questo modello"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "L'utente non ha il permesso di creare o modificare parametri per questo modello"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lista di selezione bloccata"
@@ -2445,1128 +2449,1132 @@ msgstr "Lista di selezione bloccata"
msgid "No group"
msgstr "Nessun gruppo"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "L'URL del sito è bloccato dalla configurazione"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Riavvio richiesto"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "È stata modificata un'impostazione che richiede un riavvio del server"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migrazioni in sospeso"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Numero di migrazioni del database in sospeso"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Codici di avviso attivi"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Un dizionario di codici di avviso attivi"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "ID istanza"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Identificatore unico per questa istanza InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Annuncio ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Annuncia l'ID dell'istanza del server nelle informazioni sullo stato del server (non autenticato)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nome Istanza Del Server"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Descrittore stringa per l'istanza del server"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Utilizza nome istanza"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Usa il nome dell'istanza nella barra del titolo"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Limita visualizzazione `Informazioni`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Mostra la modalità `Informazioni` solo ai superusers"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nome azienda"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Nome interno dell'azienda"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL Base"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL di base per l'istanza del server"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Valuta predefinita"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Selezionare la valuta di base per i calcoli dei prezzi"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Valute Supportate"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Elenco dei codici valuta supportati"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Intervallo Aggiornamento Valuta"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Quanto spesso aggiornare i tassi di cambio (impostare a zero per disabilitare)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "giorni"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Plugin di aggiornamento della valuta"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Plugin di aggiornamento valuta da usare"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Scarica dall'URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Consenti il download di immagini e file remoti da URL esterno"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Limite Dimensione Download"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Dimensione massima consentita per il download dell'immagine remota"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-agent utilizzato per scaricare dall'URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Consenti di sovrascrivere l'user-agent utilizzato per scaricare immagini e file da URL esterno (lasciare vuoto per il predefinito)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Convalida URL rigoroso"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Richiede specifico schema quando si convalidano gli URL"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Aggiorna intervallo di controllo"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Quanto spesso controllare gli aggiornamenti (impostare a zero per disabilitare)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Backup automatico"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Abilita il backup automatico di database e file multimediali"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervallo Di Backup Automatico"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Definisci i giorni intercorrenti tra un backup automatico e l'altro"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Intervallo Eliminazione Attività"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "I risultati delle attività in background verranno eliminati dopo un determinato numero di giorni"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Intervallo Di Cancellazione Registro Errori"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "I log di errore verranno eliminati dopo il numero specificato di giorni"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Intervallo Di Cancellazione Notifica"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Le notifiche dell'utente verranno eliminate dopo il numero di giorni specificato"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Intervallo Eliminazione Email"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "I messaggi e-mail verranno eliminati dopo il numero specificato di giorni"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Proteggi Log Email"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Impedisci l'eliminazione delle voci di log email"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Supporto Codice A Barre"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Abilita il supporto per lo scanner di codice a barre nell'interfaccia web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Memorizza Risultati Barcode"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Memorizza i risultati della scansione del codice a barre nel database"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Numero Massimo Scansioni Barcode"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Numero massimo di risultati della scansione del codice a barre da memorizzare"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Codice a barre inserito scaduto"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Tempo di ritardo di elaborazione codice a barre"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Codice a Barre Supporto Webcam"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Consenti la scansione del codice a barre tramite webcam nel browser"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Visualizza dati codice a barre"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Visualizza i dati del codice a barre nel browser come testo"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Plugin Generazione Codice A Barre"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Plugin da usare per la generazione interna di codice a barre"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revisioni Articolo"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Abilita il campo revisione per l'articolo"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Solo revisione assemblaggio"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Consenti revisioni solo per articoli di assemblaggio"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Consenti l'eliminazione dall'assemblaggio"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Permetti l'eliminazione degli articoli che sono usati in un assemblaggio"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Schema di espressione regolare per l'articolo corrispondente IPN"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Consenti duplicati IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Permetti a più articoli di condividere lo stesso IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Permetti modifiche al part number interno (IPN)"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Consenti di modificare il valore del part number durante la modifica di un articolo"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Copia I Dati Della distinta base dell'articolo"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Copia i dati della Distinta Base predefinita quando duplichi un articolo"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Copia I Dati Parametro dell'articolo"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copia i dati dei parametri di default quando si duplica un articolo"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Copia I Dati dell'Articolo Test"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Copia i dati di prova di default quando si duplica un articolo"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Copia Template Parametri Categoria"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Copia i modelli dei parametri categoria quando si crea un articolo"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Gli articoli sono modelli per impostazione predefinita"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Gli articoli possono essere assemblate da altri componenti per impostazione predefinita"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Componente"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Gli articoli possono essere assemblati da altri componenti per impostazione predefinita"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Acquistabile"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Gli articoli sono acquistabili per impostazione predefinita"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Vendibile"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Gli articoli sono acquistabili per impostazione predefinita"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Gli articoli sono tracciabili per impostazione predefinita"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuale"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Gli articoli sono virtuali per impostazione predefinita"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Mostra articoli correlati"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Visualizza parti correlate per ogni articolo"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Dati iniziali dello stock"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Consentire la creazione di uno stock iniziale quando si aggiunge una nuova parte"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Dati iniziali del fornitore"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Consentire la creazione dei dati iniziali del fornitore quando si aggiunge una nuova parte"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Formato di visualizzazione del nome articolo"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formato per visualizzare il nome dell'articolo"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Icona predefinita Categoria Articolo"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Icona predefinita Categoria Articolo (vuoto significa nessuna icona)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Prezzi Minimi Decimali"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Numero minimo di decimali da visualizzare quando si visualizzano i dati dei prezzi"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Prezzi Massimi Decimali"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Numero massimo di decimali da visualizzare quando si visualizzano i dati dei prezzi"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Usa Prezzi Fornitore"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Includere le discontinuità di prezzo del fornitore nei calcoli generali dei prezzi"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Ignora la Cronologia Acquisti"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Cronologia dei prezzi dell'ordine di acquisto del fornitore superati con discontinuità di prezzo"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Utilizzare i prezzi degli articoli in stock"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Utilizzare i prezzi dei dati di magazzino inseriti manualmente per il calcolo dei prezzi"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Età dei prezzi degli articoli in stock"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Escludere dal calcolo dei prezzi gli articoli in giacenza più vecchi di questo numero di giorni"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Utilizza Variazione di Prezzo"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Includi la variante dei prezzi nei calcoli dei prezzi complessivi"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Solo Varianti Attive"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Utilizza solo articoli di varianti attive per calcolare i prezzi delle varianti"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Aggiornamento Automatico Prezzi"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Aggiorna automaticamente il prezzo degli articoli quando i dati interni cambiano"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervallo Di Ricostruzione Dei Prezzi"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Numero di giorni prima che il prezzo dell'articolo venga aggiornato automaticamente"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Prezzi interni"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Abilita prezzi interni per gli articoli"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Sovrascrivi Prezzo Interno"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Se disponibile, i prezzi interni sostituiscono i calcoli della fascia di prezzo"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Abilita stampa etichette"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Abilita la stampa di etichette dall'interfaccia web"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Etichetta Immagine DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Risoluzione DPI quando si generano file di immagine da fornire ai plugin di stampa per etichette"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Abilita Report di Stampa"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Abilita generazione di report di stampa"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Modalità Debug"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Genera report in modalità debug (output HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Registro errori"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Errori di log che si verificano durante la generazione dei report"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Dimensioni pagina"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Dimensione predefinita della pagina per i report PDF"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Forza Unità Parametro"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Se le unità sono fornite, i valori dei parametri devono corrispondere alle unità specificate"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Seriali Unici Globali"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "I numeri di serie per gli articoli di magazzino devono essere univoci"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Elimina scorte esaurite"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Determina il comportamento predefinito quando un articolo a magazzino è esaurito"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Modello Codice a Barre"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Modello per la generazione di codici batch predefiniti per gli elementi stock"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Scadenza giacenza"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Abilita funzionalità di scadenza della giacenza"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Vendi giacenza scaduta"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Consenti la vendita di stock scaduti"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Tempo di Scorta del Magazzino"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
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/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Crea giacenza scaduta"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Permetti produzione con stock scaduto"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Controllo della proprietà della giacenza"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Abilita il controllo della proprietà sulle posizioni e gli oggetti in giacenza"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Icona Predefinita Ubicazione di Magazzino"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Icona Predefinita Ubicazione di Magazzino (vuoto significa nessuna icona)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Mostra articoli a magazzino installati"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Visualizza gli articoli a magazzino installati nelle tabelle magazzino"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Verificare la distinta base durante l'installazione degli articoli"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Gli articoli di magazzino installati devono esistere nella distinta base per l'articolo principale"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Consenti trasferimento magazzino esaurito"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Consenti il trasferimento di articoli non disponibili a magazzino tra le diverse ubicazioni di magazzino"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Modello Di Riferimento Ordine Di Produzione"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di produzione"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "È richiesto il Proprietario Responsabile"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "A ogni ordine deve essere assegnato un proprietario responsabile"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Richiede Articolo Attivo"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Impedisci la creazione di ordini di produzione per gli articolo inattivi"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Richiede Articolo Bloccato"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Impedisci la creazione di ordini di costruzione per le parti sbloccate"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Richiede un BOM valido"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Previene la creazione di ordini di costruzione a meno che BOM non sia stato convalidato"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Richiedi Ordini Dei Figli Chiusi"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Impedisci il completamento dell'ordine di costruzione fino alla chiusura di tutti gli ordini figli"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Ordini di Produzione Esterni"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Abilita funzionalità ordini di produzione esterni"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blocca Fino Al Passaggio Dei Test"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Impedisci che gli output di costruzione siano completati fino al superamento di tutti i test richiesti"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Abilita Ordini Di Reso"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Abilita la funzionalità ordine di reso nell'interfaccia utente"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Motivo di Riferimento per ordine di reso"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di reso"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Modifica Ordini Di Reso Completati"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Consenti la modifica degli ordini di reso dopo che sono stati completati"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Modello Di Riferimento Ordine Di Vendita"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di vendita"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Spedizione Predefinita Ordine Di Vendita"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Abilita la creazione di spedizioni predefinite con ordini di vendita"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Modifica Ordini Di Vendita Completati"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Consenti la modifica degli ordini di vendita dopo che sono stati spediti o completati"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
-msgstr ""
+msgstr "La Spedizione Richiede Controllo"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
-msgstr ""
+msgstr "Impedire il completamento delle spedizioni fino a quando gli articoli sono stati controllati"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Segna gli ordini spediti come completati"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Gli ordini di vendita contrassegnati come spediti saranno automaticamente completati, bypassando lo stato \"spedito\""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Modello di Riferimento Ordine D'Acquisto"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modello richiesto per generare il campo di riferimento ordine di acquisto"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Modifica Ordini Di Acquisto Completati"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Consenti la modifica degli ordini di acquisto dopo che sono stati spediti o completati"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Converti Valuta"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Converti il valore dell'elemento in valuta base quando si riceve lo stock"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Completa Automaticamente Gli Ordini D'Acquisto"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Contrassegna automaticamente gli ordini di acquisto come completi quando tutti gli elementi della riga sono ricevuti"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Abilita password dimenticata"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Abilita la funzione password dimenticata nelle pagine di accesso"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Abilita registrazione"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Abilita auto-registrazione per gli utenti nelle pagine di accesso"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "SSO abilitato"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Abilita SSO nelle pagine di accesso"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Abilita registrazione SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Abilita l'auto-registrazione tramite SSO per gli utenti nelle pagine di accesso"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Abilita sincronizzazione dei gruppi SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Abilita la sincronizzazione dei gruppi InvenTree con i gruppi forniti dall'IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Chiave gruppo SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Il nome dell'attributo di richiesta di gruppi fornito dall'IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Mappa del gruppo SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Una mappatura dai gruppi SSO ai gruppi InvenTree locali. Se il gruppo locale non esiste, verrà creato."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Rimuovere i gruppi al di fuori dell'SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Indica se i gruppi assegnati all'utente debbano essere rimossi se non sono backend dall'IdP. La disattivazione di questa impostazione potrebbe causare problemi di sicurezza"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email richiesta"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Richiedi all'utente di fornire una email al momento dell'iscrizione"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Riempimento automatico degli utenti SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Compila automaticamente i dettagli dell'utente dai dati dell'account SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Posta due volte"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Al momento della registrazione chiedere due volte all'utente l'indirizzo di posta elettronica"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Password due volte"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Al momento della registrazione chiedere agli utenti due volte l'inserimento della password"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Domini consentiti"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Limita la registrazione a determinati domini (separati da virgola, a partire da @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Gruppo iscrizione"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Gruppo a cui i nuovi utenti sono assegnati alla registrazione. Se la sincronizzazione di gruppo SSO è abilitata, questo gruppo è impostato solo se nessun gruppo può essere assegnato dall'IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Applica MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Gli utenti devono utilizzare la sicurezza a due fattori."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Controlla i plugin all'avvio"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Controlla che tutti i plugin siano installati all'avvio - abilita in ambienti contenitore"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Controlla gli aggiornamenti dei plugin"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Abilita controlli periodici per gli aggiornamenti dei plugin installati"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Abilita l'integrazione URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Attiva plugin per aggiungere percorsi URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Attiva integrazione navigazione"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Abilita i plugin per l'integrazione nella navigazione"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Abilita l'app integrata"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Abilita plugin per aggiungere applicazioni"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Abilita integrazione pianificazione"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Abilita i plugin per eseguire le attività pianificate"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Abilita eventi integrati"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Abilita plugin per rispondere agli eventi interni"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Abilita integrazione interfaccia"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Abilita i plugin per l'integrazione nell'interfaccia utente"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Abilita integrazione email"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Abilita i plugin per elaborare le email in uscita/in arrivo"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Abilita codici progetto"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Abilita i codici del progetto per tracciare i progetti"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Abilita Cronologia Magazzino"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Abilita la funzionalità per registrare i livelli storici e il valore del magazzino"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Escludi Posizioni Esterne"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Escludere le giacenze in sedi esterne dai calcoli della cronologia delle giacenze"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Inventario periodico automatico"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Numero di giorni tra la registrazione automatica dello storico magazzino"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Elimina Vecchie Voci Storiche magazzino"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Elimina voci della cronologia giacenze più vecchie del numero specificato di giorni"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Intervallo Di Cancellazione Storico Magazzino"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Le voci della cronologia magazzino verranno eliminate dopo il numero specificato di giorni"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Visualizza i nomi completi degli utenti"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Mostra nomi completi degli utenti invece che nomi utente"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Visualizza Profili Utente"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Visualizza i profili degli utenti sulla pagina del loro profilo"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Abilita Dati Stazione Di Prova"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Abilita la raccolta dati della stazione di prova per i risultati del test"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr "Abilita Ping Macchina"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr "Abilita l'attività di ping periodico delle macchine registrate per controllarne lo stato"
@@ -3596,7 +3604,7 @@ msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file"
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "Scanner di codici a barre nei campi del modulo"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
@@ -3911,29 +3919,29 @@ msgstr "L'articolo è attivo"
msgid "Manufacturer is Active"
msgstr "Il produttore è attivo"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "L'articolo fornitore è attivo"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "L'articolo interno è attivo"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Il fornitore è attivo"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Produttore"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Azienda"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Ha Scorte"
@@ -3969,7 +3977,7 @@ msgstr "Numero di telefono di contatto"
msgid "Contact email address"
msgstr "Indirizzo email"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contatto"
@@ -4022,255 +4030,247 @@ msgstr "Partita IVA"
msgid "Company Tax ID"
msgstr "Codice Fiscale Azienda"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Indirizzo"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Indirizzi"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Seleziona azienda"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Titolo indirizzo"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Titolo che descrive la voce indirizzo"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Indirizzo Principale"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Imposta come indirizzo primario"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Linea 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Indirizzo (linea 1)"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Linea 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Indirizzo (linea 2)"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "CAP"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Città/Regione"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Codice postale città/regione"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Stato/Provincia"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Stato o provincia"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Nazione"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Indirizzo Paese"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Note di spedizione del corriere"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Note per il corriere di spedizione"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Note di spedizione interne"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Note di spedizione per uso interno"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Collegamento alle informazioni sull'indirizzo (esterno)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Codice articolo produttore"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Articolo di base"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Seleziona articolo"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Seleziona Produttore"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "Codice articolo produttore (MPN)"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Codice articolo produttore"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL dell'articolo del fornitore"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Descrizione articolo costruttore"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Le unità del pacchetto devono essere compatibili con le unità dell'articolo base"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Le unità del pacchetto devono essere maggiori di zero"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Fornitore"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Seleziona fornitore"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Unità di giacenza magazzino fornitore"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Questo articolo fornitore è attivo?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Selezionare un produttore"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL dell'articolo del fornitore"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Descrizione articolo fornitore"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "costo base"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Onere minimo (ad esempio tassa di stoccaggio)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Confezionamento"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Imballaggio del pezzo"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Quantità Confezione"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Quantità totale fornita in una singola confezione. Lasciare vuoto per gli articoli singoli."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "multiplo"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Ordine multiplo"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Quantità disponibile dal fornitore"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Disponibilità Aggiornata"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Data dell’ultimo aggiornamento dei dati sulla disponibilità"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Sconto Prezzo Fornitore"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Restituisce la rappresentazione stringa per l'indirizzo primario. Questa proprietà esiste per la compatibilità all'indietro."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Valuta predefinita utilizzata per questo fornitore"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Nome Azienda"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "In magazzino"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Errore durante l'esportazione dei dati"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Il plugin di esportazione dati ha restituito un formato di dati errato"
@@ -4418,7 +4418,7 @@ msgstr "Dati riga originali"
msgid "Errors"
msgstr "Errori"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Valido"
@@ -4530,7 +4530,7 @@ msgstr "Numero di copie da stampare per ogni etichetta"
msgid "Connected"
msgstr "Connesso"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Sconosciuto"
@@ -4662,7 +4662,7 @@ msgstr "Valore massimo per il tipo di avanzamento, richiesto se tipo = progresso
msgid "Order Reference"
msgstr "Riferimento ordine"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "In Sospeso"
@@ -4670,7 +4670,7 @@ msgstr "In Sospeso"
msgid "Has Project Code"
msgstr "Ha il codice del progetto"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Creato Da"
@@ -4710,11 +4710,11 @@ msgstr "Data obiettivo dopo"
msgid "Has Pricing"
msgstr "Prezzo Articolo"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Completato prima"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Completato dopo"
@@ -4722,40 +4722,40 @@ msgstr "Completato dopo"
msgid "External Build Order"
msgstr "Ordine di Produzione Esterno"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Ordine"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Ordine completato"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Articolo interno"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Ordine in sospeso"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Completato"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Ha Spedizione"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Ordine D'Acquisto"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Ordine D'Acquisto"
msgid "Sales Order"
msgstr "Ordini di Vendita"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Prezzo Totale"
msgid "Total price for this order"
msgstr "Prezzo totale dell'ordine"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Valuta ordine"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Valuta per questo ordine (lasciare vuoto per usare il valore predefinito dell'azienda)"
@@ -4805,240 +4805,240 @@ msgstr "La data d'inizio deve essere precedente alla data di fine"
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Descrizione dell'ordine (opzionale)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Seleziona il codice del progetto per questo ordine"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Collegamento a un sito web esterno"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Data iniziale"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Data d'inizio programmata per questo ordine"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Data scadenza"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Data prevista per la consegna dell'ordine. L'ordine scadrà dopo questa data."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Data di emissione"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Data di emissione ordine"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Utente o gruppo responsabile di questo ordine"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Punto di contatto per questo ordine"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Indirizzo dell'azienda per questo ordine"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Riferimento ordine"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Stato"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Stato ordine d'acquisto"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Azienda da cui sono stati ordinati gli articoli"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Riferimento fornitore"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Codice di riferimento ordine fornitore"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "ricevuto da"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Data ordine completato"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destinazione"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Destinazione per gli elementi ricevuti"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Il fornitore dell'articolo deve corrispondere al fornitore dell'ordine di produzione"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "L'elemento di riga non corrisponde all'ordine di acquisto"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "Manca un elemento collegato"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "La quantità deve essere un numero positivo"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Cliente"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Azienda da cui sono stati ordinati gli elementi"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Stato ordine di vendita"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Riferimento Cliente "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Codice di riferimento Ordine del Cliente"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Data di spedizione"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "spedito da"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "L'ordine è già stato completato"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "L'ordine è già stato annullato"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Solo un ordine aperto può essere contrassegnato come completo"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "L'ordine non può essere completato in quanto ci sono spedizioni incomplete"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "L'ordine non può essere completato perché ci sono allocazioni incomplete"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "L'ordine non può essere completato perché ci sono elementi di riga incompleti"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "L'ordine è bloccato e non può essere modificato"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Quantità Elementi"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Riferimento Linea Elemento"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Note linea elemento"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Data di destinazione per questa voce di riga (lasciare vuoto per utilizzare la data di destinazione dall'ordine)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Descrizione della parte (opzionale)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Contesto aggiuntivo per questa voce"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Prezzo unitario"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Riga ordine d'acquisto"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "L'articolo del fornitore deve corrispondere al fornitore"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "L'ordine di produzione deve essere contrassegnato come esterno"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Gli ordini di costruzione possono essere collegati solo alle parti di assemblaggio"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "L'articolo dell'ordine di produzione deve corrispondere all'articolo della riga"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Articolo Fornitore"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Ricevuto"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Numero di elementi ricevuti"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Prezzo di Acquisto"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Prezzo di acquisto unitario"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Ordine di produzione esterno che deve essere eseguito da questo articolo"
@@ -5102,8 +5102,8 @@ msgstr "Verificato Da"
msgid "User who checked this shipment"
msgstr "Utente che ha controllato questa spedizione"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Spedizione"
@@ -5164,7 +5164,11 @@ msgstr "Impossibile allocare stock a una riga senza un articolo"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "La quantità di ripartizione non puo' superare la disponibilità della giacenza"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "La quantità di assegnazione deve essere maggiore di zero"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "La quantità deve essere 1 per l'elemento serializzato"
@@ -5172,7 +5176,7 @@ msgstr "La quantità deve essere 1 per l'elemento serializzato"
msgid "Sales order does not match shipment"
msgstr "L'ordine di vendita non corrisponde alla spedizione"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "La spedizione non corrisponde all'ordine di vendita"
@@ -5256,247 +5260,247 @@ msgstr "Costo associato alla restituzione o riparazione per questa voce di linea
msgid "Return Order Extra Line"
msgstr "Riga Extra ordine di reso"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID Ordine"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID dell'ordine da duplicare"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Copia Linee"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Copia gli elementi di riga dall'ordine originale"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Copia Linee Extra"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Copia gli elementi di riga extra dall'ordine originale"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Elementi Riga"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Righe Completate"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Duplica Ordine"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Specifica le opzioni per duplicare questo ordine"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "ID dell'ordine non corretto"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Nome Fornitore"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "L'ordine non può essere cancellato"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Consenti di chiudere l'ordine con elementi di riga incompleti"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "L'ordine ha elementi di riga incompleti"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "L'ordine non è aperto"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Prezzo Automatico"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Calcola automaticamente il prezzo di acquisto in base ai dati del fornitore articolo"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Valuta prezzo d'acquisto"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Unisci elementi"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Unisce gli elementi con lo stesso articolo, destinazione e data di destinazione in una riga"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Codice articolo"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Numero Dell'articolo Interno"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Numero Articolo Interno"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "L'articolo del fornitore deve essere specificato"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "L'ordine di acquisto deve essere specificato"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Il fornitore deve essere abbinato all'ordine d'acquisto"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "L'ordine di acquisto deve essere abbinato al fornitore"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Elemento Riga"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Inserisci il codice univoco per gli articoli in arrivo"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Data di Scadenza"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Inserisci la data di scadenza per gli articoli in arrivo"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Inserisci i numeri di serie per gli articoli stock in arrivo"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Sovrascrivi le informazioni d'imballaggio per gli articoli in arrivo"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Nota aggiuntiva per gli articoli in arrivo"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Codice a Barre"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Codice a barre scansionato"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Il codice a barre è già in uso"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Gli elementi di linea devono essere forniti"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "La destinazione deve essere specificata"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "I valori dei codici a barre forniti devono essere univoci"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Spedizioni"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Spedizioni Completate"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Valuta prezzo di vendita"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Elementi Assegnati"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Nessun dettaglio di spedizione fornito"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "L'elemento di riga non è associato a questo ordine"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "La quantità deve essere positiva"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Inserisci i numeri di serie da assegnare"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "La spedizione è già stata spedita"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "La spedizione non è associata con questo ordine"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Nessuna corrispondenza trovata per i seguenti numeri di serie"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "I seguenti numeri di serie non sono disponibili"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Articoli Linea Ordine Reso"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "L'elemento di riga non corrisponde all'ordine di reso"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "L'elemento di riga è già stato ricevuto"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Quantità da restituire"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Valuta del prezzo"
@@ -5647,7 +5651,7 @@ msgstr "Il componente è provabile"
msgid "Uses"
msgstr "Utilizzi"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Categoria Articoli"
@@ -5656,7 +5660,7 @@ msgstr "Categoria Articoli"
msgid "Part Categories"
msgstr "Categorie Articolo"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Posizione Predefinita"
@@ -5664,7 +5668,7 @@ msgstr "Posizione Predefinita"
msgid "Default location for parts in this category"
msgstr "Posizione predefinita per gli articoli di questa categoria"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Strutturale"
@@ -5680,12 +5684,12 @@ msgstr "Keywords predefinite"
msgid "Default keywords for parts in this category"
msgstr "Parole chiave predefinite per gli articoli in questa categoria"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Icona"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Icona (facoltativa)"
@@ -5693,655 +5697,655 @@ msgstr "Icona (facoltativa)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Non puoi rendere principale questa categoria di articoli perché alcuni articoli sono già assegnati!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Modello Parametro Categoria Articolo"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Valore Predefinito"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Valore Parametro Predefinito"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Articoli"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Impossibile eliminare questo articolo perché è bloccato"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Impossibile eliminare questo articolo perché è ancora attivo"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Non è possibile eliminare questo articolo in quanto è utilizzato in una costruzione"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "L'articolo '{self}' non può essere usata nel BOM per '{parent}' (ricorsivo)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "L'articolo '{parent}' è usato nel BOM per '{self}' (ricorsivo)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN deve corrispondere al modello regex {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "L'articolo non può essere una revisione di se stesso"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Non puoi fare la revisione di un articolo che è già una revisione"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Il codice di revisione deve essere specificato"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Le revisioni sono consentite solo per le parti di assemblaggio"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Non è possibile effettuare la revisione di un articolo modello"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "L'articolo genitore deve puntare allo stesso modello"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Esiste già un elemento stock con questo numero seriale"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "La revisione dell'articolo duplicata esiste già."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Un articolo con questo Nome, IPN e Revisione esiste già."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Gli articoli non possono essere assegnati a categorie articolo principali!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nome articolo"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "È Template"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Quest'articolo è un articolo di template?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Questa parte è una variante di un altro articolo?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variante Di"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Descrizione della parte (opzionale)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Parole Chiave"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Categoria articolo"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN - Numero di riferimento interno"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Numero di revisione o di versione"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revisione"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Questo articolo è una revisione di un altro articolo?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Revisione di"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Dove viene normalmente immagazzinato questo articolo?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Fornitore predefinito"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Articolo fornitore predefinito"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Scadenza Predefinita"
-#: part/models.py:1266
+#: part/models.py:1247
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:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Scorta Minima"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Livello minimo di giacenza consentito"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Unita di misura per questo articolo"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Questo articolo può essere costruito da altri articoli?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Questo articolo può essere utilizzato per costruire altri articoli?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Questo articolo ha il tracciamento per gli elementi unici?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Questo articolo può avere delle prove registrate?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Quest'articolo può essere acquistato da fornitori esterni?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Questo pezzo può essere venduto ai clienti?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Quest'articolo è attivo?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Gli articoli bloccati non possono essere modificati"
-#: part/models.py:1337
+#: part/models.py:1318
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:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "BOM Convalidata"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Il BOM per questa parte è valido?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Somma di controllo Distinta Base"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Somma di controllo immagazzinata Distinta Base"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Distinta Base controllata da"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Data di verifica Distinta Base"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Creazione Utente"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Utente responsabile di questo articolo"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Vendita multipla"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Valuta utilizzata per calcolare i prezzi"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Costo Minimo Distinta Base"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Costo minimo dei componenti dell'articolo"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Costo Massimo Distinta Base"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Costo massimo dei componenti dell'articolo"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Importo Acquisto Minimo"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Costo minimo di acquisto storico"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Importo massimo acquisto"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Costo massimo di acquisto storico"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Prezzo Interno Minimo"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Costo minimo basato su interruzioni di prezzo interne"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Prezzo Interno Massimo"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Costo massimo basato su interruzioni di prezzo interne"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Prezzo Minimo Fornitore"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Prezzo minimo articolo da fornitori esterni"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Prezzo Massimo Fornitore"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Prezzo massimo dell'articolo proveniente da fornitori esterni"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Variazione di costo minimo"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Costo minimo calcolato di variazione dell'articolo"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Massima variazione di costo"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Costo massimo calcolato di variazione dell'articolo"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Costo Minimo"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Sovrascrivi il costo minimo"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Costo Massimo"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Sovrascrivi il costo massimo"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Costo minimo totale calcolato"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Costo massimo totale calcolato"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Prezzo Di Vendita Minimo"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Prezzo minimo di vendita basato sulle interruzioni di prezzo"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Prezzo Di Vendita Massimo"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Prezzo massimo di vendita basato sulle interruzioni di prezzo"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Costo Di Vendita Minimo"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Prezzo storico minimo di vendita"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Costo Di Vendita Minimo"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Prezzo storico massimo di vendita"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Articolo per l'inventario"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Contatore Elemento"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Numero di scorte individuali al momento dell'inventario"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Totale delle scorte disponibili al momento dell'inventario"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Data"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Data in cui è stato effettuato l'inventario"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Costo Minimo Scorta"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Costo minimo stimato di magazzino a disposizione"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Costo Massimo Scorte"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Costo massimo stimato di magazzino a disposizione"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Aggiungi Prezzo Ribassato di Vendita dell'Articolo"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Modello Prove Articolo"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Nome modello non valido - deve includere almeno un carattere alfanumerico"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Il modello di prova può essere creato solo per gli articoli testabili"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Il modello di test con la stessa chiave esiste già per l'articolo"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Nome Test"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Inserisci un nome per la prova"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Chiave Di Prova"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Chiave semplificata per la prova"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Descrizione Di Prova"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Inserisci descrizione per questa prova"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Questo test è attivo?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Richiesto"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Questa prova è necessaria per passare?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Valore richiesto"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Questa prova richiede un valore quando si aggiunge un risultato di prova?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Allegato Richiesto"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Questa prova richiede un file allegato quando si aggiunge un risultato di prova?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Scelte valide per questo test (separate da virgole)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "L'articolo nella distinta base non può essere modificato - l'assemblaggio è bloccato"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "L'articolo nella distinta base non può essere modificato - l'assemblaggio della variante è bloccato"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Seleziona articolo principale"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Articolo subordinato"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Seleziona l'articolo da utilizzare nella Distinta Base"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Quantità Distinta Base per questo elemento Distinta Base"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Questo elemento della Distinta Base è opzionale"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Questo elemento della Distinta Base è consumabile (non è tracciato negli ordini di produzione)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Imposta quantità"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Logoramento"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Stima del logoramento per una build, espressa in percentuale (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Arrotondamento Multiplo"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "Arrotonda la quantità di produzione richiesta al multiplo più vicino di questo valore"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Riferimento Elemento Distinta Base"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Note Elemento Distinta Base"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Codice di controllo"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Codice di controllo Distinta Base"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Convalidato"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Questo articolo della distinta base è stato validato"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Viene Ereditato"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Questo elemento della Distinta Base viene ereditato dalle Distinte Base per gli articoli varianti"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Gli elementi in giacenza per gli articoli varianti possono essere utilizzati per questo elemento Distinta Base"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "La quantità deve essere un valore intero per gli articoli rintracciabili"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "L'articolo subordinato deve essere specificato"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Elemento Distinta Base Sostituito"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "La parte sostituita non può essere la stessa dell'articolo principale"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Elemento principale Distinta Base"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Sostituisci l'Articolo"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Articolo 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Articolo 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Seleziona Prodotto Relativo"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Nota per questa relazione"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Non si può creare una relazione tra l'articolo e sé stesso"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "La relazione duplicata esiste già"
@@ -6465,203 +6469,199 @@ msgstr "L'articolo del produttore che corrisponde a questo MPN esiste già"
msgid "Supplier part matching this SKU already exists"
msgstr "L'articolo del fornitore che corrisponde a questo SKU esiste già"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Nome Categoria"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "In Costruzione"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Quantità di questo articolo attualmente in produzione"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Articoli in magazzino"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Revisioni"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Fornitori"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Giacenze Totali"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Scorte Non Assegnate"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Scorta Variante"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Duplica articolo"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Copia i dati iniziali da un altro Articolo"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Stock iniziale"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Crea Articolo con quantità di scorta iniziale"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Informazioni Fornitore"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Aggiungi le informazioni iniziali del fornitore per questo articolo"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Copia Parametri Categoria"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Copia i parametri dai modelli della categoria articolo selezionata"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Immagine esistente"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Nome del file di un'immagine articolo esistente"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Il file immagine non esiste"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Convalida l'intera Fattura dei Materiali"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Puoi produrre"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Richiesto per gli Ordini di Produzione"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Assegnato agli Ordini di Produzione"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Richiesto per gli Ordini di Vendita"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Assegnato agli Ordini di Vendita"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Prezzo Minimo"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Sovrascrivi valore calcolato per il prezzo minimo"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Valuta del prezzo minimo"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Prezzo Massimo"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Sovrascrivi valore calcolato per il prezzo massimo"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Valuta del prezzo massimo"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Aggiorna"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Aggiorna i prezzi per questo articolo"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Impossibile convertire dalle valute fornite in {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Il prezzo minimo non può essere maggiore del prezzo massimo"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Il prezzo massimo non può essere minore del prezzo minimo"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Seleziona la componente"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Seleziona l'articolo da cui copiare la distinta base"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Rimuovi Dati Esistenti"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Rimuovi elementi distinta base esistenti prima di copiare"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Includi Ereditato"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Includi gli elementi Distinta Base ereditati da prodotti template"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Salta Righe Non Valide"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Abilita questa opzione per saltare le righe non valide"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Copia Articoli sostitutivi"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Copia articoli sostitutivi quando duplichi gli elementi distinta base"
@@ -6732,108 +6732,108 @@ msgstr "Nessuna azione specificata"
msgid "No matching action found"
msgstr "Nessuna azione corrispondente trovata"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Nessuna corrispondenza trovata per i dati del codice a barre"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Corrispondenza trovata per i dati del codice a barre"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Il modello non è supportato"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Istanza del modello non trovata"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Il codice a barre corrisponde a un elemento esistente"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Nessun articolo corrispondente trovato"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Nessun fornitore articolo corrispondente trovato"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Trovati più articoli fornitori corrispondenti"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Nessuna plugin corrispondente trovato per i dati del codice a barre"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Corrispondenza Articoli del Fornitore"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "L'articolo è già stato ricevuto"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Nessun plugin corrisponde al codice a barre del fornitore"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Trovati più articoli corrispondenti"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Nessun elemento corrispondente trovato"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Nessun ordine di vendita fornito"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Il codice a barre non corrisponde a un articolo di magazzino valido"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "L'elemento in magazzino non corrisponde alla riga"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Scorte insufficienti disponibili"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Articolo di magazzino assegnato all'ordine di vendita"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Informazioni non sufficienti"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Trovato elemento corrispondente"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "L'articolo del fornitore non corrisponde alla riga"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "La riga è già stata completata"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Ulteriori informazioni richieste per ricevere la voce"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Ricevuta la linea dell'ordine d'acquisto"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Impossibile ricevere l'elemento della linea"
@@ -6972,7 +6972,7 @@ msgstr "Fornisce supporto nativo per codici a barre"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Livelli"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Quantità Totale"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Dati Scorte"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Dati fornitore"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Includi dati fornitore"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Dati produttore"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Includi dati produttore"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr "Totale"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Numero Seriale"
@@ -8142,7 +8142,7 @@ msgstr "File immagine non trovato"
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Ubicazione magazzino"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Posizioni magazzino"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Proprietario"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Seleziona Owner"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Gli elementi di magazzino non possono essere direttamente situati in un magazzino strutturale, ma possono essere situati in ubicazioni secondarie."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Esterno"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Si tratta di una posizione esterna al magazzino"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Non puoi rendere strutturale questa posizione di magazzino perché alcuni elementi di magazzino sono già posizionati al suo interno!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "L'articolo deve essere specificato"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Gli articoli di magazzino non possono essere ubicati in posizioni di magazzino strutturali!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Non è possibile creare un elemento di magazzino per articoli virtuali"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "La quantità deve essere 1 per elementi con un numero di serie"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Il numero di serie non può essere impostato se la quantità è maggiore di 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "L'elemento non può appartenere a se stesso"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "L'elemento deve avere un riferimento di costruzione se is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Il riferimento di costruzione non punta allo stesso oggetto dell'articolo"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Elemento di magazzino principale"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Articolo base"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Seleziona un fornitore articolo corrispondente per questo elemento di magazzino"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Dove si trova questo articolo di magazzino?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Imballaggio di questo articolo di magazzino è collocato in"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Installato In"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Questo elemento è stato installato su un altro elemento?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Numero di serie per questo elemento"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Codice lotto per questo elemento di magazzino"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Quantità disponibile"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Genera Costruzione"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Costruisci per questo elemento di magazzino"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Origina Ordine di Acquisto"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Ordine d'acquisto per questo articolo in magazzino"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Destinazione Ordine di Vendita"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Data di scadenza per l'elemento di magazzino. Le scorte saranno considerate scadute dopo questa data"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Elimina al esaurimento"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Cancella questo Elemento di Magazzino quando la giacenza è esaurita"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Prezzo di acquisto unitario al momento dell’acquisto"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Convertito in articolo"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "L'articolo non è impostato come tracciabile"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "La quantità deve essere un numero intero"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "I numeri di serie devono essere forniti come elenco"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "La quantità non corrisponde ai numeri di serie"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "L'elemento di magazzino è stato assegnato a un ordine di vendita"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "L'elemento di magazzino è installato in un altro elemento"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "L'elemento di magazzino contiene altri elementi"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "L'elemento di magazzino è stato assegnato a un cliente"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "L'elemento di magazzino è attualmente in produzione"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Il magazzino serializzato non può essere unito"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Duplica elementi di magazzino"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo fornitore"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "I codici di stato dello stock devono corrispondere"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Le giacenze non possono essere spostate perché non disponibili"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Note d'ingresso"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Il valore deve essere fornito per questo test"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "L'allegato deve essere caricato per questo test"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Risultato Test"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Test valore output"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Risultato della prova allegato"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Note del test"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Elemento principale"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Inserisci i numeri di serie per i nuovi elementi"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "La quantità non deve superare la quantità disponibile ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Posizione magazzino di destinazione"
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sottoallocazioni"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "L'articolo deve essere vendibile"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "L'elemento è assegnato a un ordine di vendita"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Elemento assegnato a un ordine di costruzione"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Cliente a cui assegnare elementi di magazzino"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "L'azienda selezionata non è un cliente"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Note sull'assegnazione delle scorte"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Deve essere fornito un elenco degli elementi di magazzino"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Note di fusione di magazzino"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Consenti fornitori non corrispondenti"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Consenti di unire gli elementi di magazzino che hanno fornitori diversi"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Consenti stato non corrispondente"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Consenti di unire gli elementi di magazzino con diversi codici di stato"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Devono essere riforniti almeno due elementi in magazzino"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Nessun cambiamento"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Valore di chiave primaria StockItem"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Note sugli spostamenti di magazzino"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Ordini di Vendita"
msgid "Return Orders"
msgstr "Ordini di reso"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nome utente"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Nome"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Nome dell'utente"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Cognome"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Cognome dell'utente"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Indirizzo email dell'utente"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Staff"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Questo utente ha i permessi dello staff"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superuser"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Questo utente è un superutente"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Questo account utente è attivo"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Il tuo account è stato creato."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Si prega di utilizzare la funzione di reimpostazione password per accedere"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Benvenuto in InvenTree"
diff --git a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po
index 977bf33a12..f468a2dd5a 100644
--- a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "APIエンドポイントが見つかりません"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "バルク運転には、品目またはフィルターのリストが必要です"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "項目はリストとして提供されなければなりません"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "無効なアイテムリスト"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "フィルタはディクショナリとして提供されなければなりません"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "提供されたフィルタが無効"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
-msgstr ""
+msgstr "すべてのフィルターは真の場合にのみ使用されなければならない"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "指定された条件に一致する項目がありません"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
-msgstr ""
+msgstr "データの提供がありません。"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
-msgstr ""
+msgstr "この項目は一意である必要があります。"
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "ユーザーにこのモデルを表示する権限がありません"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "{original}を{unit}に変換できませんでした。"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "数量コードが無効です"
@@ -112,13 +112,13 @@ msgstr "日付を入力する"
msgid "Invalid decimal value"
msgstr "無効な10進数値"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "メモ"
@@ -161,7 +161,7 @@ msgstr "シリアル番号が見つかりません"
#: InvenTree/helpers.py:772
#, python-brace-format
msgid "Number of unique serial numbers ({n}) must match quantity ({q})"
-msgstr ""
+msgstr "固有のシリアル番号の数({n})は数量({q})と一致する必要があります。"
#: InvenTree/helpers.py:902
msgid "Remove HTML tags from this value"
@@ -171,35 +171,35 @@ msgstr "この値からHTMLタグを削除"
msgid "Data contains prohibited markdown content"
msgstr "データに禁止されているマークダウン・コンテンツが含まれています。"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "接続エラー"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "サーバは無効なステータスコードで応答しました"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "例外が発生しました"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "サーバーが無効なContent-Length値で応答しました"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "画像サイズが大きすぎます"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "画像のダウンロードが最大サイズを超えました"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "リモートサーバーが空のレスポンスを返しました"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "指定されたURLは有効な画像ファイルではありません"
@@ -207,11 +207,11 @@ msgstr "指定されたURLは有効な画像ファイルではありません"
msgid "Log in to the app"
msgstr "アプリにログイン"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "メールアドレス"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "二要素認証を有効にする必要があります。"
@@ -255,135 +255,135 @@ msgstr "参照は必須パターンに一致する必要があります。"
msgid "Reference number is too large"
msgstr "参照番号が大きすぎる"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "無効な選択です"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "お名前"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "説明"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "説明 (オプション)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "パス"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "同じ親に重複した名前は存在しません。"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "マークダウンメモ (オプション)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "バーコード情報"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "サードパーティ製バーコードデータ"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "バーコードハッシュ"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "バーコードデータのユニークなハッシュ"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "既存のバーコードが見つかりました"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "タスクの失敗"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "バックグラウンドワーカータスク'{f}'が{n}回試行した後に失敗しました"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "サーバーエラー"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "サーバーによってエラーが記録されました。"
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "画像"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "有効な数字でなければなりません"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "通貨"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "利用可能なオプションから通貨を選択してください"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "この項目は空欄にできません。"
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "無効な値です。"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "遠隔画像"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "外部画像ファイルのURL"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "外部URLからの画像ダウンロードは許可されていません"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "リモートURLからの画像ダウンロードに失敗しました"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "無効なコンテンツタイプ形式です"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "コンテンツタイプが見つかりません"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "コンテンツタイプが必須のミックスインクラスと一致しません"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -539,11 +539,11 @@ msgstr "中国語 (繁体字)"
#: InvenTree/tasks.py:576
msgid "Update Available"
-msgstr ""
+msgstr "アップデートが利用可能"
#: InvenTree/tasks.py:577
msgid "An update for InvenTree is available"
-msgstr ""
+msgstr "InvenTreeの更新版が利用可能になりました"
#: InvenTree/validators.py:28
msgid "Invalid physical unit"
@@ -553,8 +553,8 @@ msgstr "無効な物理単位"
msgid "Not a valid currency code"
msgstr "有効な通貨コードではありません。"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "注文ステータス"
@@ -562,21 +562,21 @@ msgstr "注文ステータス"
msgid "Parent Build"
msgstr "親ビルド"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "バリアントを含む"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "バリアントを含む"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "バリアントを含む"
msgid "Part"
msgstr "パーツ"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "カテゴリ"
@@ -666,82 +666,82 @@ msgstr "最大日付"
msgid "Exclude Tree"
msgstr "ツリーを除く"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "削除するには、ビルドをキャンセルする必要があります。"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "消耗品"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "オプション"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "アセンブリ"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "追跡"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "テスト可能"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "受注残高"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "割り当てられた"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
-msgstr ""
+msgstr "消費されました"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "利用可能"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "注文中"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "組立注文"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "場所"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
-msgstr ""
+msgstr "出力"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
-msgstr ""
+msgstr "出力ストックアイテムIDでフィルタリングします。未インストールビルドアイテムを検索するには「null」をご使用ください。"
#: build/models.py:119 users/ruleset.py:31
msgid "Build Orders"
@@ -761,7 +761,7 @@ msgstr "ロックされていない部品にビルドオーダーを作成でき
#: build/models.py:201
msgid "Build orders can only be externally fulfilled for purchaseable parts"
-msgstr ""
+msgstr "ビルドオーダーを外部委託できるのは、購入可能部品のみです"
#: build/models.py:208 order/models.py:370
msgid "Responsible user or group must be specified"
@@ -779,9 +779,9 @@ msgstr "目標期日は開始日以降であること"
msgid "Build Order Reference"
msgstr "ビルド・オーダー・リファレンス"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "セールス・オーダー・リファレンス"
msgid "SalesOrder to which this build is allocated"
msgstr "このビルドが割り当てられる SalesOrder"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "ソース・ロケーション"
@@ -819,11 +819,11 @@ msgstr "このビルドで在庫を取得する場所を選択します(任意
#: build/models.py:302
msgid "External Build"
-msgstr ""
+msgstr "外部ビルド"
#: build/models.py:303
msgid "This build order is fulfilled externally"
-msgstr ""
+msgstr "このビルドオーダーは外部委託されます。"
#: build/models.py:308
msgid "Destination Location"
@@ -857,17 +857,17 @@ msgstr "組立状況"
msgid "Build status code"
msgstr "ビルドステータスコード"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "バッチコード"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "このビルド出力のバッチコード"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "作成日時"
@@ -887,7 +887,7 @@ msgstr "完成目標日"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "ビルド完了目標日。この日付を過ぎると、ビルドは期限切れになります。"
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "完了日"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "このビルドオーダーを発行したユーザー"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "責任"
@@ -913,12 +913,12 @@ msgstr "責任"
msgid "User or group responsible for this build order"
msgstr "このビルドオーダーを担当するユーザーまたはグループ"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "外部リンク"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "外部 サイト へのリンク"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "建設順序の優先順位"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "プロジェクトコード"
@@ -941,11 +941,11 @@ msgstr "プロジェクトコード"
#: build/models.py:677
msgid "Cannot complete build order with open child builds"
-msgstr ""
+msgstr "製造中の子ビルドがあるため、ビルドオーダーを完了できません"
#: build/models.py:682
msgid "Cannot complete build order with incomplete outputs"
-msgstr ""
+msgstr "不完全な出力があるため、ビルドオーダーを完了できません"
#: build/models.py:701 build/models.py:831
msgid "Failed to offload task to complete build allocations"
@@ -960,7 +960,7 @@ msgstr "ビルドオーダー{build}が完了しました"
msgid "A build order has been completed"
msgstr "建設発注が完了しました"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "追跡可能な部品については、シリアル番号の提示が必要です。"
@@ -976,43 +976,43 @@ msgstr "ビルド出力はすでに完了しています"
msgid "Build output does not match Build Order"
msgstr "ビルド出力がビルド順序と一致しません"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "数量はゼロより大きくなければなりません"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "数量が出力数量を上回ることはできません"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
-msgstr ""
+msgstr "ビルド出力は、必要なすべてのテストを通過していません"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "ビルド出力 {serial} は、必要なすべてのテストに合格していません。"
#: build/models.py:1230
msgid "Cannot partially complete a build output with allocated items"
-msgstr ""
+msgstr "割り当てられた項目を含むビルド出力の一部のみを完了することはできません"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "ビルドオーダーラインアイテム"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "ビルドオブジェクト"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,429 +1030,421 @@ msgstr "ビルドオブジェクト"
msgid "Quantity"
msgstr "数量"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "注文数量"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
-msgstr ""
+msgstr "消費された在庫の数量"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "ビルド項目は、ビルド出力を指定する必要があります。"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "選択された在庫品目が部品表に一致しません。"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "シリアル在庫の場合、数量は1でなければなりません。"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "割当数量({q})は在庫可能数量({a})を超えてはなりません。"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "在庫が過剰配分"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "割当数量はゼロより大きくなければなりません"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "シリアル在庫の場合、数量は1でなければなりません。"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "選択された在庫品目が部品表に一致しません。"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "在庫商品"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "ソース在庫品"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "建設に割り当てる在庫量"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "インストール"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "仕向け地在庫品"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "ビルドレベル"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "部品名"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "プロジェクトコードラベル"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "ビルド出力"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "ビルド出力が親ビルドと一致しません"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "出力部分が BuildOrder 部分と一致しません。"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "このビルド出力はすでに完了しています"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "このビルド出力は完全に割り当てられていません"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "ビルド出力の数量を入力"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "追跡可能な部品に必要な整数個数"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "部品表には追跡可能な部品が含まれるため、必要な数量は整数"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "シリアル番号"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "ビルド出力のためのシリアル番号の入力"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "ビルド出力のストック位置"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "シリアル番号の自動割り当て"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "シリアル番号が一致する必要なアイテムを自動的に割り当て"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "以下のシリアル番号は既に存在するか、無効です。"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "ビルド出力のリストを提供する必要があります。"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "スクラップされたアウトプットの在庫場所"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "廃棄割り当て"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "廃棄されたアウトプットに割り当てられた在庫の破棄"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "ビルドアウトプットを廃棄する理由"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "完成した建造物のアウトプットの場所"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "不完全割当の受入れ"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "在庫が完全に割り当てられていない場合は、出力を完了します。"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "割当在庫の消費"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "このビルドに割り当て済みのストックを消費します。"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "不完全な出力の削除"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "完了していないビルド出力を削除します。"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "不可"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "このビルド・オーダーで消費されるものとして受け入れます。"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "このビルドオーダーを完了する前に割り当てを解除します。"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "総合在庫"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "製造オーダーに割り当てられた余分な在庫品をどのように処理しますか?"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "一部の在庫品目は全体的に配分されています。"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "未割り当ての受け入れ"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "在庫アイテムがこのビルド・オーダーに完全に割り当てられていないことを受け入れます。"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "必要在庫の配分が完了していません"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "インコンプリートの受け入れ"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "必要な数のビルドアウトプットが完了していないことを受け入れます。"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "必要な構築数量が完了していません"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "ビルド・オーダーには未完成の子ビルド・オーダーがあります。"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "受注生産状態であること"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "ビルド・オーダーの出力が不完全"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "組立ライン"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "ビルド出力"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "ビルド出力は同じビルド"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "ビルドラインアイテム"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.partは、ビルドオーダーと同じパーツを指す必要があります。"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "在庫があること"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "使用可能数量({q})を超過"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "追跡部品の割り当てには、ビルド出力を指定する必要があります。"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "追跡されていない部品の割り当てでは、ビルド出力を指定できません。"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "割り当て項目の提供"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "部品を調達する在庫場所(任意の場所から調達する場合は空白にしてください。)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "場所を除く"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "この選択された場所から在庫商品を除外"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "交換可能ストック"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "複数の拠点にある在庫品を交換可能"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "代替ストック"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "代替部品の割り当て"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "オプション"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "オプションのBOMアイテムをビルドオーダーに割り当てます。"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "自動割り当てタスクの開始に失敗しました"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "BOMリファレンス"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "BOMパーツID"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "部品表 部品名"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "ビルド"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "サプライヤー"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "割当数量"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "ビルドリファレンス"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "部品分類名"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "追跡可能"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "継承"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "バリアントを許可"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "BOMアイテム"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "生産中"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
-msgstr ""
+msgstr "ビルド予定"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "外部在庫"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "在庫状況"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "利用可能な代替ストック"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "在庫状況"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
-msgstr ""
+msgstr "消費量が割り当て量を超過しています"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
-msgstr ""
+msgstr "在庫消費に関する任意の注記"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
-msgstr ""
+msgstr "ビルド項目は正しいビルドオーダーを指す必要があります"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
-msgstr ""
+msgstr "重複したビルド項目の割り当て"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
-msgstr ""
+msgstr "ビルドラインは正しいビルドオーダーを指す必要があります"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
-msgstr ""
+msgstr "重複したビルドラインの割り当て"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
-msgstr ""
+msgstr "少なくとも1つの項目または行を指示する必要があります"
#: build/status_codes.py:11 generic/states/tests.py:21
#: generic/states/tests.py:131 order/status_codes.py:12
@@ -1487,7 +1479,7 @@ msgstr "受注生産に必要な在庫"
#: build/tasks.py:241
#, python-brace-format
msgid "Build order {build} requires additional stock"
-msgstr ""
+msgstr "ビルドオーダー{build}には追加の在庫が必要となります"
#: build/tasks.py:265
msgid "Overdue Build Order"
@@ -1498,19 +1490,19 @@ msgstr "期限切れ注文"
msgid "Build order {bo} is now overdue"
msgstr "ビルドオーダー{bo}は現在期限切れです"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "リンク"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "ファイル"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "ユーザーにはこれらの添付ファイルを削除する権限がありません。"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "ユーザーにはこの添付ファイルを削除する権限がありません"
@@ -1530,7 +1522,11 @@ msgstr "有効な通貨コードはありません"
msgid "No plugin"
msgstr "プラグインなし"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "プロジェクトコードラベル"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "更新しました"
@@ -1540,11 +1536,11 @@ msgstr "最終更新のタイムスタンプ"
#: common/models.py:143
msgid "Update By"
-msgstr ""
+msgstr "更新者:"
#: common/models.py:144
msgid "User who last updated this object"
-msgstr ""
+msgstr "このオブジェクトを最後に更新したユーザー"
#: common/models.py:169
msgid "Unique project code"
@@ -1558,7 +1554,7 @@ msgstr "プロジェクトの説明"
msgid "User or group responsible for this project"
msgstr "このプロジェクトを担当するユーザーまたはグループ"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "設定キー"
@@ -1590,550 +1586,550 @@ msgstr "値がバリデーション・チェックに合格しない"
msgid "Key string must be unique"
msgstr "キー文字列は一意でなければなりません。"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "ユーザー"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "価格破壊数量"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "価格"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "指定数量での単価"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "エンドポイント"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "このウェブフックを受信するエンドポイント"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "このウェブフックの名前"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "有効"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "このウェブフックはアクティブですか"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "トークン"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "アクセス用トークン"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "シークレット"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "HMACの共有秘密"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "メッセージ ID:"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "このメッセージの一意な識別子"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "ホスト"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "このメッセージを受信したホスト"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "ヘッダー"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "このメッセージのヘッダー"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "本文"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "メッセージ本文"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "このメッセージを受信したエンドポイント"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "作業内容"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "このメッセージに関する作業は終わったのですか?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "タイトル"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "リンク"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "公開済み"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "投稿者"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "概要"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "既読"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "このニュースは読まれましたか?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "画像ファイル"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "この画像の対象モデルタイプ"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "この画像の対象モデルID"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "カスタムユニット"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "単位記号は一意でなければなりません。"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "ユニット名は有効な識別子でなければなりません。"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "ユニット名"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "シンボル"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "オプションの単位記号"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "定義"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "ユニットの定義"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "添付ファイル"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "ファイルがありません"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "外部リンクが見つかりません。"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "モデルタイプ"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "画像の対象モデルタイプ"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "添付ファイルを選択"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "コメント:"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "添付コメント"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "アップロード日"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "ファイルがアップロードされた日付"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "ファイルサイズ"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "ファイルサイズ(バイト"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "添付ファイルに指定されたモデルタイプが無効です"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "カスタムステート"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "カスタムステート"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "リファレンス・ステータス・セット"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "このカスタム状態で拡張されたステータスセット"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "論理キー"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "ビジネスロジックでこのカスタムステートに等しいステート論理キー"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "値"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "モデルのデータベースに保存される数値"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "都道府県名"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "ラベル"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "フロントエンドに表示されるラベル"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "色"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "フロントエンドに表示される色"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "モデル"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "この状態が関連するモデル"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "モデルを選択する必要があります"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "キーを選択する必要があります。"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "論理キーを選択する必要があります。"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "キーは論理キーと異なる必要があります。"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "有効な参照ステータスクラスが提供されなければならない"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "キーは、参照ステータスの論理キーとは異なる必要があります。"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "論理キーは、参照ステータスの論理キーに含まれていなければなりません。"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "リファレンス・ステータスの名前とは異なっていなければならない。"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "セレクションリスト"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "セレクション・リスト"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "選択リストの名前"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "選択リストの説明"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "ロック中"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "この選択リストはロックされていますか?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "このセレクションリストは使えますか?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "ソースプラグイン"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "選択リストを提供するプラグイン"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "ソースストリング"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "このリストに使用されているソースを示すオプションの文字列"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "デフォルトエントリー"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "この選択リストのデフォルト項目"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "作成日"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "選択リストが作成された日時"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "最終更新"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "選択リストが最後に更新された日時"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "セレクションリスト入力"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "セレクションリスト"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "このエントリーが属する選択リスト"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "選択リストエントリーの値"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "選択リスト項目のラベル"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "選択リスト項目の説明"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "この選択リストはアクティブですか?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "パラメータテンプレート"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "パラメータテンプレート"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "チェックボックスのパラメータに単位を指定することはできません。"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "チェックボックスパラメータに選択肢を持たせることはできません。"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "選択肢はユニークでなければなりません"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "パラメータ・テンプレート名は一意でなければなりません。"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "このパラメータテンプレートにおける対象モデルタイプ"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "パラメータ名"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "単位"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "このパラメータの物理単位"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "パラメータの説明"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "チェックボックス"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "このパラメータはチェックボックスですか?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "選択肢"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "このパラメータの有効な選択肢(カンマ区切り)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "このパラメータの選択リスト"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "有効"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "このパラメータテンプレートは有効ですか?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "パラメータ"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "パラメータ"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "パラメータ値の選択が無効"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "パラメータに対して無効なモデルタイプが指定されています"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "モデルID"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "このパラメータの対象となるモデルのID"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "テンプレート"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "パラメータテンプレート"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "データ"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "パラメータ値"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,183 +2139,183 @@ msgstr "パラメータ値"
msgid "Note"
msgstr "備考"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "任意のメモ欄"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "バーコードスキャン"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "バーコードデータ"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "バーコードをスキャンしたユーザー"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "タイムスタンプ"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "バーコードスキャンの日時"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "バーコードを処理したURLエンドポイント"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "コンテキスト"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "バーコードスキャンのコンテキストデータ"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "返答"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "バーコードスキャンによるレスポンスデータ"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "結果"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "バーコードスキャンは成功しましたか?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
-msgstr ""
+msgstr "エラーが発生しました"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
-msgstr ""
+msgstr "INVE-E8: メールログの削除は保護されています。削除を許可するには、INVENTREE_PROTECT_EMAIL_LOG を False に設定してください。"
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
-msgstr ""
+msgstr "メールメッセージ"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
-msgstr ""
+msgstr "メールメッセージ"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
-msgstr ""
+msgstr "発表されました"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
-msgstr ""
+msgstr "送信"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
-msgstr ""
+msgstr "失敗"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
-msgstr ""
+msgstr "配送済み"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
-msgstr ""
+msgstr "確認済み"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
-msgstr ""
+msgstr "インバウンド"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
-msgstr ""
+msgstr "アウトバウンド"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
-msgstr ""
+msgstr "返信なし"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
-msgstr ""
+msgstr "配送状況を記録"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
-msgstr ""
-
-#: common/models.py:3026
-msgid "Track Click"
-msgstr ""
-
-#: common/models.py:3029 common/models.py:3132
-msgid "Global ID"
-msgstr ""
+msgstr "読み取りを記録"
#: common/models.py:3042
+msgid "Track Click"
+msgstr "クリックを記録"
+
+#: common/models.py:3045 common/models.py:3148
+msgid "Global ID"
+msgstr "グローバルID"
+
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
-msgstr ""
+msgstr "このメッセージの識別子(外部システムから提供される場合があります)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
-msgstr ""
+msgstr "スレッドID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
-msgstr ""
+msgstr "このメッセージスレッドの識別子(外部システムから提供される場合があります)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
-msgstr ""
-
-#: common/models.py:3061
-msgid "Linked thread for this message"
-msgstr ""
+msgstr "スレッド"
#: common/models.py:3077
+msgid "Linked thread for this message"
+msgstr "このメッセージに関連するスレッド"
+
+#: common/models.py:3093
msgid "Priority"
-msgstr ""
+msgstr "優先順位"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
-msgstr ""
+msgstr "メールのスレッド"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
-msgstr ""
+msgstr "メールのスレッド"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "キー"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
-msgstr ""
+msgstr "このスレッドの固有キー(スレッドを識別するために使用されます)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
-msgstr ""
+msgstr "このスレッドの固有識別子"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
-msgstr ""
+msgstr "内部を開始しました"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
-msgstr ""
+msgstr "このスレッドは内部で開始されたものですか?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
-msgstr ""
+msgstr "スレッドが作成された日時"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
-msgstr ""
+msgstr "スレッドが最後に更新された日時"
#: common/notifications.py:57
#, python-brace-format
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} キャンセル"
msgid "A order that is assigned to you was canceled"
msgstr "あなたに割り当てられた注文がキャンセルされました。"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "受領品目"
@@ -2351,93 +2347,101 @@ msgstr "発注書と照らし合わせて商品を受領"
msgid "Items have been received against a return order"
msgstr "返品注文に反して商品が届いた場合"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
-msgstr ""
+msgstr "環境変数によって設定が上書きされるかどうかを示します"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
-msgstr ""
+msgstr "上書き"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "走行中"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "保留タスク"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "スケジュールされたタスク"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "失敗したタスク"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "タスクID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "ユニークなタスクID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "ロック"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "ロック時間"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "タスク名"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "関数"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "機能名"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "引数"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "タスク引数"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "キーワード論争"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "タスクキーワード引数"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "ファイル名"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "モデルタイプ"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "このモデルの添付ファイルを作成または編集する権限がありません。"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "ユーザーは、このモデルのパラメータを作成または編集する権限がありません。"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "選択リストがロックされています"
@@ -2445,1130 +2449,1134 @@ msgstr "選択リストがロックされています"
msgid "No group"
msgstr "グループなし"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "サイトのURLが設定によってロックされています"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "再起動が必要"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "サーバーの再起動を必要とする設定が変更されました。"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "保留中の移行"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "保留中のデータベース移行数"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
-msgstr ""
+msgstr "有効な警告コード"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
-msgstr ""
+msgstr "有効な警告コードの辞書"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "インスタンスID"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "このInvenTreeインスタンスの一意識別子"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "アナウンスID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "サーバーのインスタンスIDをサーバーステータス情報でアナウンス(認証なし)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "サーバーインスタンス名"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "サーバーインスタンスの文字列記述子"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "インスタンス名を使用"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "タイトルバーにインスタンス名を使用"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "about`を表示する制限"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "スーパーユーザーにのみ `about` モーダルを表示します。"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "会社名"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "社内社名"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "ベース URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "サーバーインスタンスのベースURL"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "デフォルトの通貨"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "価格計算のベース通貨を選択"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "対応通貨"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "対応通貨コード一覧"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "通貨の更新間隔"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "為替レートの更新頻度 (ゼロに設定すると無効になります)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "日"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "通貨更新プラグイン"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "通貨更新プラグイン"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "URLからダウンロード"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "外部URLからの画像ダウンロードを許可する"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "ダウンロードサイズ制限"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "外部URL画像の最大サイズ"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "URLからのダウンロードに使用されるユーザーエージェント"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "外部URLから画像やファイルをダウンロードする際に使用するユーザーエージェントを上書きすることができます。"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "厳格なURLバリデーション"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "URL検証時にスキーマ指定を要求"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "更新チェック間隔"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "アップデートをチェックする頻度 (ゼロに設定すると無効になります)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "自動バックアップ"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "データベースとメディアファイルの自動バックアップ"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "自動バックアップ間隔"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "自動バックアップイベント間の日数を指定"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "タスク削除間隔"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "バックグラウンドタスクの結果は、指定した日数後に削除されます。"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "エラーログ削除間隔"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "エラーログは指定した日数後に削除されます。"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "通知削除間隔"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "ユーザー通知は指定された日数後に削除されます。"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
-msgstr ""
+msgstr "メール削除間隔"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
-msgstr ""
+msgstr "メールメッセージは、指定された日数が経過後に削除されます。"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
-msgstr ""
+msgstr "メールログの保護"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
-msgstr ""
+msgstr "メールログエントリの削除を防止します"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "バーコードサポート"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "ウェブインターフェイスでバーコードスキャナのサポートを有効にします。"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "店舗バーコード結果"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "バーコードスキャン結果をデータベースに保存"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "バーコードスキャン最大カウント"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "バーコードスキャン結果の最大保存数"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "バーコード入力遅延"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "バーコード入力処理遅延時間"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "バーコードウェブカメラサポート"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "ブラウザのウェブカメラでバーコードのスキャンが可能"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "バーコード表示データ"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "バーコードデータをテキストとしてブラウザに表示"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "バーコード生成プラグイン"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "内部バーコードデータ生成に使用するプラグイン"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "部品改訂"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "パートのリビジョンフィールドを有効にします。"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "アセンブリ改訂のみ"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "組立部品のみ修正可能"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "アセンブリからの削除を許可"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "アセンブリで使用されている部品の削除を許可します。"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN 正規表現"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "部分IPNにマッチする正規表現パターン"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "IPNの重複を許可"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "複数のパートが同じIPNを共有できるようにします。"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "IPNの編集を許可"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "部品編集中にIPN値の変更を許可"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "部品表データのコピー"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "部品複製時にBOMデータをデフォルトでコピー"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "部品パラメータデータのコピー"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "部品複製時にデフォルトでパラメータデータをコピー"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "コピー部品テストデータ"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "部品複製時にテストデータをデフォルトでコピー"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "カテゴリー・パラメーター・テンプレートのコピー"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "部品作成時のカテゴリー・パラメーター・テンプレートのコピー"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "パーツはデフォルトのテンプレートです"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "コンポーネント"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "パーツはデフォルトでサブコンポーネントとして使用できます"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "購入可能"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "パーツはデフォルトで購入可能です"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "販売可能"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "パーツはデフォルトで販売可能です"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "パーツはデフォルトで追跡可能です"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "バーチャル"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "パーツはデフォルトでバーチャル"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "関連部品を表示"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "部品の関連部品を表示"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "初期在庫データ"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "新規部品追加時に初期在庫を作成可能"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "サプライヤー初期データ"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "新しい部品を追加する際に、最初のサプライヤーデータを作成できるようにします。"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "部品名表示形式"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "部品名の表示形式"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "パーツカテゴリー デフォルトアイコン"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "パートカテゴリのデフォルトアイコン(空はアイコンがないことを意味します)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "価格の最小桁数"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "価格データのレンダリング時に表示する最小小数点以下の桁数"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "価格の小数点以下の桁数"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "価格データのレンダリング時に表示する小数点以下の桁数の最大値"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "サプライヤー価格の利用"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "全体的な価格計算にサプライヤーの価格破壊を含めること"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "購入履歴の上書き"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "過去の発注価格がサプライヤーの価格変動を上書き"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "ストックアイテム価格を使用"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "手動入力された在庫データから価格計算を行います。"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "在庫商品の価格設定年齢"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "この日数より古い在庫品を価格計算から除外します。"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "バリアント価格を使用"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "全体的な価格計算にバリアント価格を含む"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "アクティブバリアントのみ"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "バリアント価格の計算には、アクティブなバリアントパーツのみを使用します。"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
-msgstr ""
+msgstr "自動更新の価格設定"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
-msgstr ""
+msgstr "内部データが変更された際に、部品価格を自動的に更新します。"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "価格の再構築間隔"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "部品価格が自動的に更新されるまでの日数"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "社内価格"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "部品の内部価格の有効化"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "内部価格オーバーライド"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "利用可能な場合、内部価格は価格帯の計算より優先されます。"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "ラベル印刷の有効化"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "ウェブインターフェースからラベル印刷を有効にします。"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "ラベル画像DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "ラベル印刷プラグインに供給する画像ファイルを生成する際のDPI解像度"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "レポートの有効化"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "レポートの作成"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "デバッグモード"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "デバッグモードでのレポート生成(HTML出力)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "ログレポートエラー"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "レポート生成時に発生するエラーのログ"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "ページサイズ"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "PDFレポートのデフォルトのページサイズ"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "パラメータ単位の強制"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "単位が指定されている場合、パラメータ値は指定された単位に一致する必要があります。"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "世界的にユニークな連載"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "在庫品のシリアル番号はグローバルに一意でなければなりません。"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "枯渇在庫の削除"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "ストックアイテムが枯渇した場合のデフォルトの動作を決定します。"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "バッチコードテンプレート"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "ストックアイテムのデフォルトバッチコード生成用テンプレート"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "有効期限"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "在庫期限切れ機能の有効化"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "期限切れ株式の売却"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "期限切れ株式の売却を許可"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "在庫切れ時間"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "在庫品が期限切れとみなされるまでの日数"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "賞味期限切れ在庫の処理"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "期限切れの在庫を使用した建物の建築を許可"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "株式所有権"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "ストックロケーションとアイテムの所有権管理"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "在庫場所 デフォルトアイコン"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "在庫場所のデフォルトアイコン(空はアイコンがないことを意味します。)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "インストール済みストックアイテムの表示"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "ストックテーブルにインストールされたストックアイテムを表示"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "アイテム取り付けの際はBOMをチェック"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "親部品のBOMには、インストールされたストックアイテムが存在する必要があります。"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "在庫切れの転送を許可"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "在庫のないストックアイテムをストックロケーション間で移動可能"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "ビルド・オーダー参照パターン"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Build Order参照フィールドの生成に必要なパターン"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "責任ある所有者を要求"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "各注文には、責任ある所有者を指定する必要があります。"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "アクティブパートが必要"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "非稼動部品の製造オーダー作成を防止"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "ロックされた部分を要求"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "ロックされていない部品の製造オーダー作成を防止"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "有効なBOMが必要"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "BOMが検証されない限り、製造オーダーが作成されないようにします。"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "クローズド・チャイルド・オーダー"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "すべてのチャイルドオーダーが終了するまで、ビルドオーダーの完了を防止します。"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
-msgstr ""
+msgstr "外部ビルドオーダー"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
-msgstr ""
+msgstr "外部ビルドオーダー機能の有効化"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "テストがパスするまでブロック"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "必要なテストがすべて合格するまで、ビルド出力が完了しないようにします。"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "返品注文の有効化"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "ユーザーインターフェイスで返品注文機能を有効にします。"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "リターンオーダー参照パターン"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "返品注文参照フィールドの生成に必要なパターン"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "完了した返品注文の編集"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "注文完了後の返品注文の編集が可能"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "販売注文参照パターン"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "販売注文参照フィールドの生成に必要なパターン"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "販売注文のデフォルト出荷"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "販売注文でデフォルト出荷を作成可能"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "完了した販売注文の編集"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "出荷または完了後の販売注文の編集を許可します。"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
-msgstr ""
+msgstr "出荷には確認が必要です"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
-msgstr ""
+msgstr "商品が確認されるまで、出荷の完了をお控えください。"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "出荷された注文を完了としてマーク"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "出荷済みと表示された販売注文は、「出荷済み」ステータスを回避して自動的に完了します。"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "発注書参照パターン"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "発注書参照フィールドの生成に必要なパターン"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "完了した発注書の編集"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "出荷後または完了後の発注書の編集が可能"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "通貨の変換"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "在庫を受け取る際、商品価値を基準通貨に変換"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "自動発注"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "すべての品目を受領した時点で、発注書を完了として自動的にマーク"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "パスワード忘れ"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "ログインページでのパスワード忘れ防止機能の有効化"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "登録の有効化"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "ログインページでユーザーの自己登録を可能にします。"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "SSOの有効化"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "ログインページでSSOを有効化"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "SSO登録の有効化"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "ログインページでSSOによるユーザーの自己登録を可能にします。"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "SSOグループ同期の有効化"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "InvenTreeグループとIdPが提供するグループの同期を有効にします。"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSOグループキー"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "IdP が提供する groups claim 属性の名前。"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "SSOグループマップ"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "SSOグループからローカルのInvenTreeグループへのマッピング。ローカル・グループが存在しない場合は、作成されます。"
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "SSO外のグループを削除"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "ユーザーに割り当てられたグループがIdPによってバックエンドされていない場合に削除するかどうか。この設定を無効にすると、セキュリティ上の問題が発生する可能性があります。"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "メールアドレスは必須です"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "サインアップ時にメールの入力を要求"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "SSOユーザーの自動入力"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "SSOアカウントデータからユーザー詳細を自動入力"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "メール2回"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "サインアップの際、ユーザーに2度メールを尋ねます。"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "パスワード2回"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "サインアップ時にパスワードを2回要求"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "許可ドメイン"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "特定のドメイン(@で始まるカンマ区切り)へのサインアップを制限します。"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "登録時のグループ"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "新規ユーザ登録時に割り当てられるグループ。SSOグループ同期が有効な場合、このグループはIdPからグループを割り当てられない場合にのみ設定されます。"
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "MFAの実施"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "ユーザーは多要素セキュリティを使用する必要があります。"
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "起動時にプラグインをチェック"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "起動時にすべてのプラグインがインストールされていることを確認 - コンテナ環境では有効にします。"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "プラグインのアップデートの確認"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "インストールされているプラグインのアップデートを定期的にチェックします。"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "URL統合の有効化"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "プラグインがURLルートを追加できるようにします"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "ナビゲーション統合の有効化"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "プラグインをナビゲーションに統合可能"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "アプリとの統合"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "プラグインを有効にしてアプリを追加"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "スケジュール統合の有効化"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "スケジュールタスクを実行するプラグインの有効化"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "イベント統合の有効化"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "プラグインが内部イベントに応答できるようにします。"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "インターフェース統合の有効化"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "プラグインがユーザー・インターフェースに統合できるようにします。"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
-msgstr ""
+msgstr "メール連携を有効にする"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
-msgstr ""
+msgstr "プラグインを有効にして、送信/受信メールを処理できるようにします"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "プロジェクトコードの有効化"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "プロジェクトを追跡するためのプロジェクトコードの有効化"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
-msgstr ""
+msgstr "在庫履歴記録を有効にします"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
-msgstr ""
+msgstr "過去の在庫数量および価値を記録する機能を有効にします"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "外部ロケーションを除く"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
-msgstr ""
+msgstr "外部保管場所にある在庫品は、在庫履歴の計算から除外してください"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "自動引取期間"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
-msgstr ""
+msgstr "自動在庫履歴記録の間隔(日数)"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
-msgstr ""
+msgstr "古い在庫履歴の項目を削除する"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
-msgstr ""
+msgstr "指定された日数より古い在庫履歴のエントリを削除します"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
-msgstr ""
+msgstr "在庫履歴の削除間隔"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
-msgstr ""
+msgstr "指定された日数が経過しましたら、在庫履歴の記録は削除されます。"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "ユーザーのフルネームを表示"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "ユーザー名の代わりにフルネームを表示"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "ユーザープロファイルの表示"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "プロフィールページにユーザーのプロフィールを表示"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "テストステーションデータの有効化"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "テスト結果のテストステーションデータ収集の有効化"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
-msgstr ""
+msgstr "マシン ping を有効にする"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
-msgstr ""
+msgstr "登録されたマシンの状態を確認するため、定期的なpingタスクを有効にしてください"
#: common/setting/user.py:23
msgid "Inline label display"
@@ -3596,11 +3604,11 @@ msgstr "ファイルとしてダウンロードする代わりに、ブラウザ
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "フォームフィールド内のバーコードスキャナー"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "フォームフィールドへのバーコードスキャナー入力の許可"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3788,19 +3796,19 @@ msgstr "ナビバーの位置は画面上部に固定されます。"
#: common/setting/user.py:195
msgid "Fixed Table Headers"
-msgstr ""
+msgstr "固定された表の見出し"
#: common/setting/user.py:196
msgid "Table headers are fixed to the top of the table"
-msgstr ""
+msgstr "表の見出しは表の上部に固定されています"
#: common/setting/user.py:201
msgid "Show Spotlight"
-msgstr ""
+msgstr "スポットライトを表示する"
#: common/setting/user.py:202
msgid "Enable spotlight navigation functionality"
-msgstr ""
+msgstr "スポットライトナビゲーション機能を有効にする"
#: common/setting/user.py:207
msgid "Navigation Icons"
@@ -3820,11 +3828,11 @@ msgstr "日付の表示形式"
#: common/setting/user.py:227
msgid "Show Stock History"
-msgstr ""
+msgstr "在庫履歴を表示する"
#: common/setting/user.py:228
msgid "Display stock history information in the part detail page"
-msgstr ""
+msgstr "部品詳細ページに在庫履歴情報を表示します"
#: common/setting/user.py:233
msgid "Show Last Breadcrumb"
@@ -3836,19 +3844,19 @@ msgstr "現在のページをパンくずで表示"
#: common/setting/user.py:239
msgid "Show full stock location in tables"
-msgstr ""
+msgstr "表に在庫場所をすべて表示します"
#: common/setting/user.py:241
msgid "Disabled: The full location path is displayed as a hover tooltip. Enabled: The full location path is displayed as plain text."
-msgstr ""
+msgstr "無効時:完全な場所のパスがホバーツールチップとして表示されます。有効時:完全な場所のパスがプレーンテキストとして表示されます。"
#: common/setting/user.py:247
msgid "Show full part categories in tables"
-msgstr ""
+msgstr "表内の全カテゴリを表示します"
#: common/setting/user.py:249
msgid "Disabled: The full category path is displayed as a hover tooltip. Enabled: The full category path is displayed as plain text."
-msgstr ""
+msgstr "無効時:カテゴリの完全なパスがホバー時のツールチップとして表示されます。有効時:カテゴリの完全なパスがプレーンテキストとして表示されます。"
#: common/setting/user.py:255
msgid "Receive error reports"
@@ -3868,7 +3876,7 @@ msgstr "ユーザーの最後に使用した印刷機を保存"
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "全モデル"
#: common/validators.py:63
msgid "No attachment model type provided"
@@ -3911,29 +3919,29 @@ msgstr "パートはアクティブ"
msgid "Manufacturer is Active"
msgstr "メーカーはアクティブ"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "サプライヤーが活動中"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "内部はアクティブ"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "サプライヤーの活動"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "製造元"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "会社名"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "在庫あり"
@@ -3969,7 +3977,7 @@ msgstr "連絡先電話番号"
msgid "Contact email address"
msgstr "連絡先メールアドレス"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "お問い合わせ"
@@ -4016,261 +4024,253 @@ msgstr "この会社で使用されるデフォルト通貨"
#: company/models.py:225
msgid "Tax ID"
-msgstr ""
+msgstr "納税者番号"
#: company/models.py:226
msgid "Company Tax ID"
-msgstr ""
+msgstr "法人税番号"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "住所"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "マイアカウント"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "会社を選択"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "住所"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "アドレスエントリを説明するタイトル"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "主な住所"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "プライマリアドレスに設定"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "1行目"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "丁目、番地、号など"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "2行目"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "建物名、部屋番号など"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "郵便番号"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "都市/地域"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "郵便番号 都市/地域"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "都道府県"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "都道府県"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "国"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "住所国"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "宅配便発送に関する注意事項"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "宅配便発送時の注意事項"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "社内出荷に関する注意事項"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "社内用出荷注意事項"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "住所情報へのリンク(外部)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "メーカー・パーツ"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "ベース部"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "部品を選択"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "メーカー選択"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "メーカー品番"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "外部メーカー部品リンク用URL"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "メーカー部品説明"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "パックユニットは、ベースユニットと互換性がある必要があります。"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "パック単位はゼロより大きくなければなりません。"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "リンクされたメーカー部品は、同じベース部品を参照する必要があります。"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "仕入先"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "サプライヤーを選択"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "サプライヤー在庫管理ユニット"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "このサプライヤーは活動していますか?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "メーカー部品の選択"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "外部サプライヤー部品リンク用URL"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "サプライヤーの部品説明"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "基本料金"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "ミニマムチャージ(例:仕入れ手数料)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "パッケージング"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "部品梱包"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "パック数量"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "1パックに供給される総量。単品の場合は空のままにしてください。"
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "複数"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "複数注文"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "サプライヤーから入手可能な数量"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "空席状況更新"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "アベイラビリティ・データの最終更新日"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "サプライヤーの価格破壊"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "プライマリ・アドレスの文字列表現を返します。このプロパティは後方互換性のために存在します。"
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "このサプライヤーで使用されるデフォルト通貨"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "会社名"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "在庫あり"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
-msgstr ""
+msgstr "価格割り引き"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "データのエクスポート中にエラーが発生しました"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "データエクスポートプラグインが不正なデータ形式を返しました"
@@ -4352,11 +4352,11 @@ msgstr "フィールドフィルター"
#: importer/models.py:126
msgid "Update Existing Records"
-msgstr ""
+msgstr "既存の記録を更新する"
#: importer/models.py:127
msgid "If enabled, existing records will be updated with new data"
-msgstr ""
+msgstr "有効にされた場合、既存のレコードは新しいデータで更新されます"
#: importer/models.py:259
msgid "Some required fields have not been mapped"
@@ -4364,11 +4364,11 @@ msgstr "一部の必須フィールドがマッピングされていません"
#: importer/models.py:366
msgid "ID"
-msgstr ""
+msgstr "ID"
#: importer/models.py:367
msgid "Existing database identifier for the record"
-msgstr ""
+msgstr "レコードの既存データベース識別子"
#: importer/models.py:430
msgid "Column is already mapped to a database field"
@@ -4418,21 +4418,21 @@ msgstr "元の行データ"
msgid "Errors"
msgstr "エラー"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "有効"
#: importer/models.py:720
msgid "ID is required for updating existing records."
-msgstr ""
+msgstr "既存の記録を更新するにはIDが必要です。"
#: importer/models.py:727
msgid "No record found with the provided ID"
-msgstr ""
+msgstr "指定のIDで該当する記録は見つかりませんでした"
#: importer/models.py:733
msgid "Invalid ID format provided"
-msgstr ""
+msgstr "無効なID形式が指定されました"
#: importer/operations.py:31 importer/operations.py:52
msgid "Unsupported data file format"
@@ -4530,7 +4530,7 @@ msgstr "各ラベルの印刷部数"
msgid "Connected"
msgstr "接続済み"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "不明"
@@ -4540,7 +4540,7 @@ msgstr "印刷"
#: machine/machine_types/label_printer.py:234
msgid "Warning"
-msgstr ""
+msgstr "警告"
#: machine/machine_types/label_printer.py:235
msgid "No media"
@@ -4556,7 +4556,7 @@ msgstr "ネットワーク接続なし"
#: machine/machine_types/label_printer.py:238
msgid "Error"
-msgstr ""
+msgstr "エラー"
#: machine/machine_types/label_printer.py:245
msgid "Label Printer"
@@ -4628,11 +4628,11 @@ msgstr "設定タイプ"
#: machine/serializers.py:24
msgid "Key of the property"
-msgstr ""
+msgstr "プロパティーキー"
#: machine/serializers.py:27
msgid "Value of the property"
-msgstr ""
+msgstr "プロパティー値"
#: machine/serializers.py:30 users/models.py:238
msgid "Group"
@@ -4640,29 +4640,29 @@ msgstr "グループ"
#: machine/serializers.py:30
msgid "Grouping of the property"
-msgstr ""
+msgstr "プロパティーのグループ"
#: machine/serializers.py:33
msgid "Type"
-msgstr ""
+msgstr "タイプ"
#: machine/serializers.py:35
msgid "Type of the property"
-msgstr ""
+msgstr "プロパティーの種類"
#: machine/serializers.py:40
msgid "Max Progress"
-msgstr ""
+msgstr "最大進捗"
#: machine/serializers.py:41
msgid "Maximum value for progress type, required if type=progress"
-msgstr ""
+msgstr "進行状況タイプの場合の最大値。type=progress の場合に必須です。"
#: order/api.py:130
msgid "Order Reference"
msgstr "注文参照"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "並外れた"
@@ -4670,7 +4670,7 @@ msgstr "並外れた"
msgid "Has Project Code"
msgstr "プロジェクトコード"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "作成者"
@@ -4710,52 +4710,52 @@ msgstr "以降の目標日"
msgid "Has Pricing"
msgstr "価格"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "完成前"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "終了後"
#: order/api.py:342 order/api.py:346
msgid "External Build Order"
-msgstr ""
+msgstr "外部ビルドオーダー"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "注文"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "注文完了"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "内部パーツ"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "注文保留"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "完了"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "出荷あり"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "注文"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "注文"
msgid "Sales Order"
msgstr "セールスオーダー"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "合計金額"
msgid "Total price for this order"
msgstr "この注文の合計金額"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "注文通貨"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "この注文の通貨(会社のデフォルトを使用する場合は空白のままにしてください。)"
@@ -4803,244 +4803,244 @@ msgstr "開始日は目標期日より前でなければなりません。"
#: order/models.py:391
msgid "Address does not match selected company"
-msgstr ""
+msgstr "指定の会社と住所が一致しません"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "ご注文内容(任意)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "この注文のプロジェクトコードを選択してください。"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "外部ページへのリンク"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "開始日"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "本注文の開始予定日"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "終了日に達したら"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "お届け予定日この期日を過ぎますと延滞となります。"
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "発行日"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "オーダー発行日"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "この注文を担当するユーザーまたはグループ"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "本注文に関する連絡先"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "本注文の会社住所"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "注文参照"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "ステータス"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "発注状況"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "注文元の会社"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "サプライヤー・リファレンス"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "サプライヤー注文参照コード"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "受信"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "注文完了日"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "目的地"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "入荷商品のお届け先"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "部品サプライヤーは、POサプライヤーと一致する必要があります。"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "品目が発注書と一致しません"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
-msgstr ""
+msgstr "行項目にリンクされた部品が不足しています"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "数量は正の数でなければなりません。"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "顧客"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "販売先"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "販売注文状況"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "お客様リファレンス"
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "顧客注文参照コード"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "出荷日"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "出荷元"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "注文はすでに完了しています。"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "注文はすでにキャンセルされました"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "未完了の注文にのみ完了マークを付けることができます。"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "出荷に不備があるため、注文を完了できません。"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "割り当てに不備があるため、注文を完了できません。"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "不完全な項目があるため、注文を完了できません。"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "注文はロックされ、変更できません。"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "品目数量"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "行項目参照"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "項目"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "この行項目の目標期日(注文の目標期日を使用する場合は空白のままにしてください。)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "行項目の説明(オプション)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "この行の補足説明"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "単価"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "発注書項目"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "サプライヤーの部品はサプライヤーと一致しなければなりません。"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
-msgstr ""
+msgstr "ビルドオーダーは外部としてマークする必要があります"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
-msgstr ""
+msgstr "ビルドオーダーはアセンブリ部品にのみリンクできます"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
-msgstr ""
+msgstr "ビルドオーダーの部品は、ラインアイテムの部品と一致する必要があります。"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "サプライヤー"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "受信"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "受領品目数"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "購入金額"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "購入単価"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
-msgstr ""
+msgstr "本品目により完成する外部ビルドオーダー"
#: order/models.py:2039
msgid "Purchase Order Extra Line"
@@ -5076,11 +5076,11 @@ msgstr "販売注文の出荷"
#: order/models.py:2254
msgid "Shipment address must match the customer"
-msgstr ""
+msgstr "配送先住所はお客様と一致している必要があります"
#: order/models.py:2290
msgid "Shipping address for this shipment"
-msgstr ""
+msgstr "こちらの発送先住所"
#: order/models.py:2298
msgid "Date of shipment"
@@ -5102,8 +5102,8 @@ msgstr "チェック済み"
msgid "User who checked this shipment"
msgstr "この貨物をチェックしたユーザー"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "発送"
@@ -5138,7 +5138,7 @@ msgstr "出荷品目に割り当てられた在庫がありません"
#: order/models.py:2388
msgid "Shipment must be checked before it can be completed"
-msgstr ""
+msgstr "出荷は完了前に必ず確認が必要となります"
#: order/models.py:2467
msgid "Sales Order Extra Line"
@@ -5164,7 +5164,11 @@ msgstr "部品のないラインに在庫を割り当てることはできませ
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "割当数量が在庫数量を超えることはできません"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "割当数量はゼロより大きくなければなりません"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "シリアル化された在庫品の場合、数量は1でなければなりません。"
@@ -5172,7 +5176,7 @@ msgstr "シリアル化された在庫品の場合、数量は1でなければ
msgid "Sales order does not match shipment"
msgstr "販売注文と出荷が一致しません"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "出荷が販売注文と一致しません"
@@ -5256,247 +5260,247 @@ msgstr "この品目の返品または修理に関連する費用"
msgid "Return Order Extra Line"
msgstr "リターンオーダー追加ライン"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "注文ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "複製する注文のID"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "コピーライン"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "元の注文から行項目をコピー"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "余分な行をコピー"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "元の注文から余分な項目をコピー"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "ラインアイテム"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "完成路線"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "重複した注文"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "この注文を複製するためのオプションを指定します。"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "無効なオーダーID"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "サプライヤー名"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "ご注文のキャンセルはできません。"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "未完了の行項目で注文を閉じることができます。"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "注文に不備がある場合"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "ご注文は受け付けておりません。"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "自動車価格"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "サプライヤーの部品データに基づいて購入価格を自動計算"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "購入価格通貨"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "アイテムのマージ"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "同じ品目、同じ仕向け地、同じ日付の品目を1つの品目に統合します。"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "内部部品番号"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "内部部品名"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "サプライヤー部品の指定が必要"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "注文書の指定が必要"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "サプライヤーは発注書と一致しなければなりません。"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "発注書はサプライヤーと一致している必要があります。"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "明細"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "受取商品の配送先選択"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "入荷在庫品のバッチコード入力"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "有効期限"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "入荷在庫の有効期限の入力"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "入荷した在庫品のシリアル番号の入力"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "入荷在庫品の包装情報の上書き"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "在庫品の入荷に関する注意事項"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "バーコード"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "スキャンされたバーコード"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "バーコードはすでに使用されています"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "項目は必ずご記入ください。"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "デスティネーション・ロケーションを指定する必要があります。"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "バーコードの値は一意でなければなりません。"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "発送"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "完了した出荷"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "販売価格通貨"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "割当項目"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "出荷の詳細は記載されていません"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "ラインアイテムは、この注文に関連付けられていません。"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "数量は正数でなければなりません。"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "割り当てるシリアル番号を入力"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "出荷済み"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "この注文には出荷が関連付けられていません"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "以下のシリアル番号に該当するものは見つかりませんでした。"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "以下のシリアル番号はご利用いただけません。"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "返品注文項目"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "ラインアイテムが返品オーダーと一致しません"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "ラインアイテムはすでに受領済み"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "商品の受け取りは、進行中の注文に対してのみ可能です。"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "返品数量"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "ライン価格通貨"
@@ -5625,15 +5629,15 @@ msgstr "BOM有効"
#: part/api.py:969
msgid "Cascade Categories"
-msgstr ""
+msgstr "カスケードカテゴリ"
#: part/api.py:970
msgid "If true, include items in child categories of the given category"
-msgstr ""
+msgstr "もし該当する場合には、指定されたカテゴリの子カテゴリ内のアイテムを含めてください。"
#: part/api.py:976
msgid "Filter by numeric category ID or the literal 'null'"
-msgstr ""
+msgstr "数値カテゴリIDまたはリテラル'null'でフィルタリングしてください"
#: part/api.py:1258
msgid "Assembly part is testable"
@@ -5647,7 +5651,7 @@ msgstr "コンポーネント部分はテスト可能"
msgid "Uses"
msgstr "用途"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "パーツカテゴリ"
@@ -5656,7 +5660,7 @@ msgstr "パーツカテゴリ"
msgid "Part Categories"
msgstr "パーツカテゴリ"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "デフォルトの場所"
@@ -5664,7 +5668,7 @@ msgstr "デフォルトの場所"
msgid "Default location for parts in this category"
msgstr "このカテゴリの部品のデフォルトの場所"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "構造に関するパターン"
@@ -5680,12 +5684,12 @@ msgstr "デフォルトキーワード"
msgid "Default keywords for parts in this category"
msgstr "このカテゴリの部品のデフォルトキーワード"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "アイコン"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "アイコン (オプション)"
@@ -5693,655 +5697,655 @@ msgstr "アイコン (オプション)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "いくつかの部品がすでに割り当てられているため、この部品カテゴリを構造化することはできません!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "部品分類パラメータテンプレート"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "初期値"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "パラメータのデフォルト値"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "パーツ"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
-msgstr ""
+msgstr "ロックされた部品のパラメータは削除できません"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
-msgstr ""
+msgstr "ロックされた部品のパラメータを変更することはできません"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "この部分はロックされているため削除できません"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "このパートはまだアクティブなので削除できません。"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "この部品はアセンブリで使用されているため、削除できません。"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "パート'{self}'は'{parent}'(再帰的)のBOMでは使用できません。"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "パート'{parent}'は'{self}'のBOMで使用(再帰的)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPNは正規表現パターン{pattern}に一致しなければなりません。"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "パートはそれ自体の改訂にはなりえません"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "すでにリビジョンとなっている部分のリビジョンを作成することはできません。"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "リビジョンコードの指定が必要"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "修正が許されるのは組立部品のみ"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "テンプレート部品のリビジョンを作成できません"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "親部品は同じテンプレートを指す必要があります。"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "このシリアル番号の在庫品はすでに存在します"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "パート設定でIPNの重複が許可されていません。"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "重複する部品リビジョンが既に存在します。"
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "この名前、IPN、リビジョンを持つ部品は既に存在します。"
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "部品を構造部品のカテゴリーに割り当てることはできません!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "部品名"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "テンプレート"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "この部品はテンプレート部品ですか?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "この部品は他の部品の変形ですか?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "変種"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "部品の説明(オプション)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "キーワード"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "検索結果での視認性を向上させる部分キーワード"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "パーツカテゴリ"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "即時支払通知"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "部品のリビジョンまたはバージョン番号"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "リビジョン"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "この部品は他の部品の改訂版ですか?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "改訂版"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "この商品は通常どこに保管されていますか?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "デフォルト・サプライヤー"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "サプライヤーのデフォルト部品"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "デフォルトの有効期限"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "この部品の在庫品の有効期限(日単位"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "最小在庫"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "最低許容在庫量"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "この部品の単位"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "この部品は他の部品から作ることができますか?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "この部品を使って他の部品を作ることはできますか?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "このパーツはユニークなアイテムの追跡が可能ですか?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "この部品にテスト結果を記録することはできますか?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "この部品は外部のサプライヤーから購入できますか?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "この部品は顧客に販売できますか?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "この部分はアクティブですか?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "ロックされた部分は編集できません"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "これは、ソフトウェア製品やライセンスなどの仮想部品ですか?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
-msgstr ""
+msgstr "部品表の検証が完了しました"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
-msgstr ""
+msgstr "こちらの部品の部品表(BOM)は有効でしょうか?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "BOMチェックサム"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "保存されたBOMのチェックサム"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "BOMチェック済み"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "BOMチェック日"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "作成ユーザー"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "この部分の責任者"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "複数販売"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "価格計算のキャッシュに使用される通貨"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "最小BOMコスト"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "構成部品の最低コスト"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "最大BOMコスト"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "構成部品の最大コスト"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "最低購入価格"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "過去の最低購入価額"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "最大購入費用"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "過去の最高購入価格"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "最低社内価格"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "社内価格ブレークに基づく最低コスト"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "社内最高価格"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "社内価格ブレークに基づく最大コスト"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "最低供給価格"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "外部サプライヤーからの部品の最低価格"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "サプライヤー最高価格"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "外部サプライヤーからの部品の最高価格"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "最小バリアントコスト"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "バリアントパーツの最小コストの計算"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "最大バリアントコスト"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "バリアント部品の最大コストの計算"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "最低料金"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "最低コストのオーバーライド"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "最大コスト"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "最大コストのオーバーライド"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "総合的な最小コストの計算"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "総合最大コストの計算"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "最低販売価格"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "価格破壊に基づく最低販売価格"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "最高販売価格"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "価格破壊に基づく最高販売価格"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "最低販売価格"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "過去の最低売却価格"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "最大販売価格"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "過去の最高売却価格"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "ストックテイク用部品"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "個数"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "棚卸時の個別在庫数"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "ストックテイク時の在庫可能量"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "日付"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "ストックテイク実施日"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "最低在庫コスト"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "手元在庫の最低見積原価"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "最大在庫コスト"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "手元在庫の最大見積原価"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "パーツセール価格"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "部品試験テンプレート"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "無効なテンプレート名 - 英数字を1文字以上含む必要があります。"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "テストテンプレートは、テスト可能な部分に対してのみ作成できます。"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "同じキーを持つテスト・テンプレートがパートに既に存在します。"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "試験名"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "テストの名前を入力します。"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "テストキー"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "テストの簡易キー"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "試験内容"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "このテストの説明を入力してください。"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "このテストは有効ですか?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "必須"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "このテストは合格するために必要ですか?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "価値が必要"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "このテストは、テスト結果を追加する際に値を必要としますか?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "アタッチメントが必要"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "この試験では、試験結果を追加する際にファイルの添付が必要ですか。"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "このテストで有効な選択肢(カンマ区切り)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "BOMアイテムは変更できません - アセンブリがロックされています。"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "BOM アイテムは変更できません - バリアントアセンブリがロックされています。"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "親部品を選択"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "サブパート"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "BOMで使用する部品を選択"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "このBOMアイテムのBOM数量"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "この部品表はオプションです。"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "このBOMアイテムは消耗品です。"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
-msgstr ""
+msgstr "設定数量"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
-msgstr ""
+msgstr "ビルドに必要な追加の必要量(セットアップ時の損失を考慮した分)"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
-msgstr ""
+msgstr "歩留まり損失"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
-msgstr ""
+msgstr "ビルドにおける推定歩留まり率(0~100%で表されます)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
-msgstr ""
+msgstr "丸め倍数"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
-msgstr ""
+msgstr "必要な生産数量を、この値の倍数に切り上げてください。"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "BOMアイテムリファレンス"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "BOMアイテムノート"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "チェックサムi"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "BOMラインのチェックサム"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "検証済み"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "このBOMアイテムは検証済みです"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "継承"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "この BOM アイテムは、バリアントパーツの BOM に継承されます。"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "このBOMアイテムには、バリアントパーツのストックアイテムを使用できます。"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "数量は追跡可能な部品の場合、整数値でなければなりません。"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "サブパーツの指定が必要"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "BOMアイテム代替"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "代用部品はマスター部品と同じにすることはできません。"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "親BOMアイテム"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "代用部品"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "パート #1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "パート #2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "関連部品を選択"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "この関係について"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "部品とそれ自身との間に部品関係を作ることはできません。"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "重複する関係が既に存在します。"
@@ -6415,11 +6419,11 @@ msgstr "元のパートからメモをコピー"
#: part/serializers.py:416
msgid "Copy Tests"
-msgstr ""
+msgstr "コピーテスト"
#: part/serializers.py:417
msgid "Copy test templates from original part"
-msgstr ""
+msgstr "元の部品からテスト用テンプレートをコピーしてください"
#: part/serializers.py:435
msgid "Initial Stock Quantity"
@@ -6465,203 +6469,199 @@ msgstr "このMPNに一致するメーカー部品はすでに存在します。
msgid "Supplier part matching this SKU already exists"
msgstr "このSKUに一致するサプライヤー部品は既に存在します。"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "カテゴリ名"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "建物"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
-msgstr ""
+msgstr "現在生産中の当該部品の数量"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
-msgstr ""
+msgstr "この部品の予定生産数量"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "在庫商品"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "リビジョン"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "仕入先"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "総在庫"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "未割当株式"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "バリアントストック"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "重複部分"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "別のパートから初期データをコピー"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "初期在庫"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "初期在庫数で部品を作成"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "サプライヤー情報"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "この部品の初期サプライヤー情報を追加します。"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "コピーカテゴリパラメータ"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "選択したパーツカテゴリーからパラメータテンプレートをコピー"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "既存イメージ"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "既存の部品画像のファイル名"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "画像ファイルが存在しません"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "部品表全体の検証"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "ビルド"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
-msgstr ""
+msgstr "ビルドオーダーに必要なもの"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
-msgstr ""
+msgstr "ビルドオーダーに割り当てられました"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
-msgstr ""
+msgstr "セールスオーダーに必要なもの"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
-msgstr ""
+msgstr "セールスオーダーに割り当てられました"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "最小価格"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "最低価格の計算値の上書き"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "最低価格通貨"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "最大価格"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "最高価格の計算値を上書き"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "最高価格通貨"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "更新"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "この部品の価格を更新"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "提供された通貨から{default_currency}に変換できませんでした。"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "最低価格は最高価格を超えてはなりません。"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "最高価格は最低価格を下回ってはなりません。"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "親アセンブリを選択"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "構成部品の選択"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "BOMをコピーする部品を選択します。"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "既存データの削除"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "コピー前に既存のBOMアイテムを削除"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "インクルード継承"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "テンプレート化された部品から継承されたBOM項目を含めます。"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "無効な行をスキップ"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "無効な行をスキップするには、このオプションを有効にします。"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "コピー代用部品"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "BOMアイテムの重複時に代替部品をコピー"
@@ -6676,33 +6676,33 @@ msgstr "{part.name}の在庫が設定された最低レベルを下回りまし
#: part/tasks.py:73
msgid "Stale stock notification"
-msgstr ""
+msgstr "在庫切れ通知"
#: part/tasks.py:77
msgid "You have 1 stock item approaching its expiry date"
-msgstr ""
+msgstr "在庫品1点について、有効期限が近づいています。"
#: part/tasks.py:79
#, python-brace-format
msgid "You have {item_count} stock items approaching their expiry dates"
-msgstr ""
+msgstr "在庫品のうち、{item_count}点の商品がまもなく期限切れとなります。"
#: part/tasks.py:88
msgid "No expiry date"
-msgstr ""
+msgstr "有効期限なし"
#: part/tasks.py:95
msgid "Expired {abs(days_diff)} days ago"
-msgstr ""
+msgstr "期限切れ {abs(days_diff)} 日前"
#: part/tasks.py:98
msgid "Expires today"
-msgstr ""
+msgstr "本日が期限となります"
#: part/tasks.py:101
#, python-brace-format
msgid "{days_until_expiry} days"
-msgstr ""
+msgstr "{days_until_expiry} 日"
#: plugin/api.py:80
msgid "Builtin"
@@ -6732,108 +6732,108 @@ msgstr "アクションが指定されていません"
msgid "No matching action found"
msgstr "一致するアクションが見つかりませんでした"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "バーコードデータが見つかりません"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "バーコードデータとの一致が確認されました。"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "モデルはサポートされていません"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "モデルインスタンスが見つかりません"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "バーコードが既存のアイテムと一致"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "一致する部品データが見つかりません"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "一致するサプライヤー部品は見つかりませんでした"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "一致するサプライヤー部品が複数見つかりました"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "バーコードデータに一致するプラグインは見つかりませんでした"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "適合部品"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "商品はすでに受領済みです。"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "サプライヤーのバーコードに一致するプラグインがない"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "複数の一致する行項目が見つかりました"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "該当する項目が見つかりません"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "販売注文はありません"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "バーコードが既存の在庫品と一致しません"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "在庫品目が行品目と一致しません"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "在庫不足"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "販売注文に割り当てられた在庫品目"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "情報が不足しています"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "一致するアイテムが見つかりました"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "サプライヤーの部品が品目と一致しない"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "ライン・アイテムはすでに完了している"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "ライン・アイテムを受け取るために必要な詳細情報"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "受領済み発注書項目"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "ラインアイテムの受信に失敗"
@@ -6972,7 +6972,7 @@ msgstr "バーコードのネイティブサポートを提供"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7016,165 +7016,165 @@ msgstr "複数のInvenTreeインスタンスがある環境で便利です。"
#: plugin/builtin/events/auto_create_builds.py:28
msgid "Auto Create Builds"
-msgstr ""
+msgstr "自動ビルド作成"
#: plugin/builtin/events/auto_create_builds.py:31
msgid "Automatically create build orders for assemblies"
-msgstr ""
+msgstr "アセンブリのビルドオーダーを自動的に作成します"
#: plugin/builtin/events/auto_issue_orders.py:17
msgid "Auto Issue Orders"
-msgstr ""
+msgstr "自動発行オーダー"
#: plugin/builtin/events/auto_issue_orders.py:20
msgid "Automatically issue orders on the assigned target date"
-msgstr ""
+msgstr "指定された目標日に自動的にオーダーを発行します"
#: plugin/builtin/events/auto_issue_orders.py:30
msgid "Auto Issue Build Orders"
-msgstr ""
+msgstr "自動発行ビルドオーダー"
#: plugin/builtin/events/auto_issue_orders.py:32
msgid "Automatically issue build orders on the assigned target date"
-msgstr ""
+msgstr "割り当てられた目標日に、自動的にビルドオーダーを発行します。"
#: plugin/builtin/events/auto_issue_orders.py:38
msgid "Auto Issue Purchase Orders"
-msgstr ""
+msgstr "自動発行発注書"
#: plugin/builtin/events/auto_issue_orders.py:40
msgid "Automatically issue purchase orders on the assigned target date"
-msgstr ""
+msgstr "割り当てられた目標日に、自動的に発注書を発行します。"
#: plugin/builtin/events/auto_issue_orders.py:46
msgid "Auto Issue Sales Orders"
-msgstr ""
+msgstr "自動発行セールスオーダー"
#: plugin/builtin/events/auto_issue_orders.py:48
msgid "Automatically issue sales orders on the assigned target date"
-msgstr ""
+msgstr "割り当てられた目標日に、自動的にセールスオーダーを発行します。"
#: plugin/builtin/events/auto_issue_orders.py:54
msgid "Auto Issue Return Orders"
-msgstr ""
+msgstr "自動発行返品オーダー"
#: plugin/builtin/events/auto_issue_orders.py:56
msgid "Automatically issue return orders on the assigned target date"
-msgstr ""
+msgstr "割り当てられた目標日に、自動的に返品オーダーを発行します。"
#: plugin/builtin/events/auto_issue_orders.py:62
msgid "Issue Backdated Orders"
-msgstr ""
+msgstr "過去日付でのオーダー発行"
#: plugin/builtin/events/auto_issue_orders.py:63
msgid "Automatically issue orders that are backdated"
-msgstr ""
+msgstr "過去日付のオーダーを自動的に発行します"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "レベル"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
-msgstr ""
-
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
-msgid "Total Quantity"
-msgstr ""
+msgstr "エクスポートするレベル数 - すべてのBOMレベルをエクスポートするにはゼロに設定してください"
#: plugin/builtin/exporter/bom_exporter.py:31
-msgid "Include total quantity of each part in the BOM"
-msgstr ""
+#: plugin/builtin/exporter/bom_exporter.py:118
+msgid "Total Quantity"
+msgstr "総量"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:32
+msgid "Include total quantity of each part in the BOM"
+msgstr "BOMには、各部品の総数量を含めてください"
+
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "在庫データ"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "部品在庫データを含む"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "価格データ"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "部品価格データを含む"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "サプライヤーデータ"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "サプライヤーデータを含む"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "メーカーデータ"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "メーカーデータを含む"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "代替データ"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "代替部品データを含む"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "パラメータデータ"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "部品パラメータデータを含む"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "マルチレベルBOMエクスポート"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "マルチレベルBOMのエクスポートをサポートします。"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "BOMレベル"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "代替{n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "サプライヤー {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "サプライヤー {n} SKU"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "サプライヤー {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "メーカー {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "メーカー {n} MPN"
@@ -7189,91 +7189,91 @@ msgstr "InvenTreeからのデータエクスポートをサポートします。
#: plugin/builtin/exporter/parameter_exporter.py:16
msgid "Exclude Inactive"
-msgstr ""
+msgstr "非アクティブを除外する"
#: plugin/builtin/exporter/parameter_exporter.py:17
msgid "Exclude parameters which are inactive"
-msgstr ""
+msgstr "非アクティブなパラメータを除外します"
#: plugin/builtin/exporter/parameter_exporter.py:29
msgid "Parameter Exporter"
-msgstr ""
+msgstr "パラメータエクスポーター"
#: plugin/builtin/exporter/parameter_exporter.py:30
msgid "Exporter for model parameter data"
-msgstr ""
+msgstr "モデルパラメータデータ用エクスポーター"
#: plugin/builtin/exporter/stocktake_exporter.py:25
msgid "Include External Stock"
-msgstr ""
+msgstr "外部在庫を含める"
#: plugin/builtin/exporter/stocktake_exporter.py:26
msgid "Include external stock in the stocktake data"
-msgstr ""
+msgstr "棚卸データに外部在庫を含めてください"
#: plugin/builtin/exporter/stocktake_exporter.py:31
msgid "Include Variant Items"
-msgstr ""
+msgstr "バリエーション品目を含める"
#: plugin/builtin/exporter/stocktake_exporter.py:32
msgid "Include part variant stock in pricing calculations"
-msgstr ""
+msgstr "価格計算に部品のバリエーション在庫を含める"
#: plugin/builtin/exporter/stocktake_exporter.py:44
msgid "Part Stocktake Exporter"
-msgstr ""
+msgstr "部品在庫棚卸データ用エクスポーター"
#: plugin/builtin/exporter/stocktake_exporter.py:45
msgid "Exporter for part stocktake data"
-msgstr ""
+msgstr "部品在庫棚卸データ用エクスポーター"
#: plugin/builtin/exporter/stocktake_exporter.py:108
msgid "Minimum Unit Cost"
-msgstr ""
+msgstr "最小単位コスト"
#: plugin/builtin/exporter/stocktake_exporter.py:109
msgid "Maximum Unit Cost"
-msgstr ""
+msgstr "最大単位コスト"
#: plugin/builtin/exporter/stocktake_exporter.py:110
msgid "Minimum Total Cost"
-msgstr ""
+msgstr "最低総費用"
#: plugin/builtin/exporter/stocktake_exporter.py:111
msgid "Maximum Total Cost"
-msgstr ""
+msgstr "最大総費用"
#: plugin/builtin/integration/core_notifications.py:23
msgid "InvenTree UI Notifications"
-msgstr ""
+msgstr "InvenTree UI 通知"
#: plugin/builtin/integration/core_notifications.py:26
msgid "Integrated UI notification methods"
-msgstr ""
+msgstr "統合されたUI通知方法"
#: plugin/builtin/integration/core_notifications.py:67
msgid "InvenTree Email Notifications"
-msgstr ""
+msgstr "InvenTree メール通知"
#: plugin/builtin/integration/core_notifications.py:70
msgid "Integrated email notification methods"
-msgstr ""
+msgstr "統合されたメール通知方法"
#: plugin/builtin/integration/core_notifications.py:75
msgid "Allow email notifications"
-msgstr ""
+msgstr "メール通知を許可します"
#: plugin/builtin/integration/core_notifications.py:76
msgid "Allow email notifications to be sent to this user"
-msgstr ""
+msgstr "このユーザーへのメール通知を許可します"
#: plugin/builtin/integration/core_notifications.py:123
msgid "InvenTree Slack Notifications"
-msgstr ""
+msgstr "InvenTree Slack通知"
#: plugin/builtin/integration/core_notifications.py:126
msgid "Integrated Slack notification methods"
-msgstr ""
+msgstr "統合されたSlack通知方法"
#: plugin/builtin/integration/core_notifications.py:131
msgid "Slack incoming webhook url"
@@ -7297,11 +7297,11 @@ msgstr "デフォルトの為替統合"
#: plugin/builtin/integration/machine_types.py:15
msgid "InvenTree Machines"
-msgstr ""
+msgstr "InvenTree マシーンズ"
#: plugin/builtin/integration/machine_types.py:16
msgid "Built-in machine types for InvenTree"
-msgstr ""
+msgstr "InvenTreeの組み込みマシンタイプ"
#: plugin/builtin/integration/part_notifications.py:20
msgid "Part Notifications"
@@ -7354,11 +7354,11 @@ msgstr "ラベルプリンター"
msgid "Provides support for printing using a machine"
msgstr "機械による印刷をサポートします。"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "最終使用"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "オプション"
@@ -7392,11 +7392,11 @@ msgstr "ラベルシートを横向きに印刷"
#: plugin/builtin/labels/label_sheet.py:55
msgid "Page Margin"
-msgstr ""
+msgstr "ページ余白"
#: plugin/builtin/labels/label_sheet.py:56
msgid "Margin around the page in mm"
-msgstr ""
+msgstr "ページの周囲の余白(単位:mm)"
#: plugin/builtin/labels/label_sheet.py:69
msgid "InvenTree Label Sheet Printer"
@@ -7501,15 +7501,15 @@ msgstr "プラグインがアクティブなため、アンインストールで
#: plugin/installer.py:347
msgid "Plugin cannot be uninstalled as it is mandatory"
-msgstr ""
+msgstr "このプラグインは必須のため、アンインストールすることはできません。"
#: plugin/installer.py:352
msgid "Plugin cannot be uninstalled as it is a sample plugin"
-msgstr ""
+msgstr "このプラグインはサンプルプラグインのため、アンインストールすることはできません。"
#: plugin/installer.py:357
msgid "Plugin cannot be uninstalled as it is a built-in plugin"
-msgstr ""
+msgstr "プラグインは組み込みプラグインのため、アンインストールすることはできません。"
#: plugin/installer.py:361
msgid "Plugin is not installed"
@@ -7592,27 +7592,27 @@ msgstr "プラグインに必要なバージョンは最大で{v}です。"
#: plugin/samples/integration/sample.py:52
msgid "User Setting 1"
-msgstr ""
+msgstr "ユーザー設定1"
#: plugin/samples/integration/sample.py:53
msgid "A user setting that can be changed by the user"
-msgstr ""
+msgstr "ユーザーが変更可能なユーザー設定"
#: plugin/samples/integration/sample.py:57
msgid "User Setting 2"
-msgstr ""
+msgstr "ユーザー設定2"
#: plugin/samples/integration/sample.py:58
msgid "Another user setting"
-msgstr ""
+msgstr "別のユーザー設定"
#: plugin/samples/integration/sample.py:63
msgid "User Setting 3"
-msgstr ""
+msgstr "ユーザー設定3"
#: plugin/samples/integration/sample.py:64
msgid "A user setting with choices"
-msgstr ""
+msgstr "ユーザー設定(選択肢付き)"
#: plugin/samples/integration/sample.py:72
msgid "Enable PO"
@@ -7800,7 +7800,7 @@ msgstr "このプラグインを有効化します"
#: plugin/serializers.py:243
msgid "Mandatory plugin cannot be deactivated"
-msgstr ""
+msgstr "必須プラグインは無効化できません"
#: plugin/serializers.py:261
msgid "Delete configuration"
@@ -7812,7 +7812,7 @@ msgstr "データベースからプラグイン設定を削除します"
#: plugin/serializers.py:293
msgid "The user for which this setting applies"
-msgstr ""
+msgstr "この設定が適用されるユーザー"
#: report/api.py:44 report/serializers.py:102 report/serializers.py:152
msgid "Items"
@@ -7912,11 +7912,11 @@ msgstr "レポートを横向きにレンダリング"
#: report/models.py:393
msgid "Merge"
-msgstr ""
+msgstr "統合"
#: report/models.py:394
msgid "Render a single report against selected items"
-msgstr ""
+msgstr "選択された項目に対して単一のレポートを生成します"
#: report/models.py:449
#, python-brace-format
@@ -7925,11 +7925,11 @@ msgstr "テンプレート{self.name}から生成されたレポート"
#: report/models.py:546 report/models.py:585 report/models.py:586
msgid "Template syntax error"
-msgstr ""
+msgstr "テンプレートの構文エラー"
#: report/models.py:553 report/models.py:592
msgid "Error rendering report"
-msgstr ""
+msgstr "レポートの表示にエラーが発生しました"
#: report/models.py:612
msgid "Error generating report"
@@ -7937,7 +7937,7 @@ msgstr "レポート生成エラー"
#: report/models.py:644
msgid "Error merging report outputs"
-msgstr ""
+msgstr "レポート出力の統合エラー"
#: report/models.py:676
msgid "Width [mm]"
@@ -8051,7 +8051,7 @@ msgstr "サプライヤーが削除されました"
#: report/templates/report/inventree_purchase_order_report.html:22
msgid "Order Details"
-msgstr ""
+msgstr "ご注文の詳細"
#: report/templates/report/inventree_purchase_order_report.html:37
#: report/templates/report/inventree_sales_order_report.html:30
@@ -8072,7 +8072,7 @@ msgstr "合計"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "シリアル番号"
@@ -8142,7 +8142,7 @@ msgstr "画像ファイルが見つかりません"
msgid "part_image tag requires a Part instance"
msgstr "part_image タグには Part インスタンスが必要です。"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "company_image タグには Company インスタンスが必要です。"
@@ -8158,7 +8158,7 @@ msgstr "トップレベルのロケーションによるフィルタリング"
msgid "Include sub-locations in filtered results"
msgstr "フィルタリング結果にサブロケーションを含めることができます。"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "親の位置"
@@ -8248,19 +8248,19 @@ msgstr "期限失効"
#: stock/api.py:963
msgid "Provide a StockItem PK to exclude that item and all its descendants"
-msgstr ""
+msgstr "そのアイテムおよびそのすべての子孫を除外するためのStockItemのプライマリキーをご提供ください。"
#: stock/api.py:981
msgid "Cascade Locations"
-msgstr ""
+msgstr "カスケードの所在地"
#: stock/api.py:982
msgid "If true, include items in child locations of the given location"
-msgstr ""
+msgstr "もし真であれば、指定された場所の子要素に含まれる項目を含めます"
#: stock/api.py:988
msgid "Filter by numeric Location ID or the literal 'null'"
-msgstr ""
+msgstr "数値のロケーションID、またはリテラル文字列の「null」でフィルタリングしてください。"
#: stock/api.py:1084
msgid "Quantity is required"
@@ -8284,20 +8284,20 @@ msgstr "追跡不可能な部品については、シリアル番号は提供で
#: stock/api.py:1396
msgid "Include Installed"
-msgstr ""
+msgstr "組み込み済みを含める"
#: stock/api.py:1398
msgid "If true, include test results for items installed underneath the given stock item"
-msgstr ""
+msgstr "もし真であれば、指定した在庫アイテムの中に組み込まれている構成部品のテスト結果を含める"
#: stock/api.py:1405
msgid "Filter by numeric Stock Item ID"
-msgstr ""
+msgstr "数値による在庫品IDでの絞り込み"
#: stock/api.py:1426
#, python-brace-format
msgid "Stock item with ID {id} does not exist"
-msgstr ""
+msgstr "ID {id} の在庫品は存在しません"
#: stock/models.py:71
msgid "Stock Location type"
@@ -8311,314 +8311,314 @@ msgstr "ストックロケーションの種類"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "アイコンが設定されていないすべての場所のデフォルトアイコン (オプション)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "ストックロケーション"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "在庫場所"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "所有者"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "所有者を選択"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "ストックアイテムは、構造的なストックロケーションに直接配置されることはありませんが、子ロケーションに配置されることはあります。"
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "外部"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "これは外部の在庫場所です。"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "ロケーションタイプ"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "このロケーションのロケーションタイプ"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "いくつかのストックアイテムがすでにストックロケーションに配置されているため、このストックロケーションを構造化することはできません!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
-msgstr ""
+msgstr "{field}は存在しません"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "部品の指定が必要"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "在庫品は、構造的な在庫場所に配置することはできません!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "仮想部品にストックアイテムを作成できません"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "パートタイプ('{self.supplier_part.part}')は{self.part}でなければなりません。"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "シリアル番号のある商品は数量が1でなければなりません。"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "数量が1以上の場合、シリアル番号は設定できません。"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "アイテムはそれ自身に属することはできません"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "is_building=Trueの場合、アイテムはビルド・リファレンスを持っていなければならない。"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "ビルド参照が同じ部品オブジェクトを指していません。"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "親株式"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "ベース部"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "この在庫品に一致するサプライヤー部品を選択してください"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "この在庫品はどこにありますか?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "この在庫品は以下の梱包で保管されています。"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "設置場所"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "このアイテムは他のアイテムにインストールされていますか?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "この商品のシリアル番号"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "このストックアイテムのバッチコード"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "在庫数"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "ソースビルド"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "このストックアイテムのビルド"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "消費者"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "このストックアイテムを消費したビルドオーダー"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "発注元"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "この在庫商品の購入注文"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "販売先オーダー"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "在庫品の有効期限。この日を過ぎると在庫は期限切れとなります。"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "枯渇時に削除"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "在庫がなくなったら、このストックアイテムを削除します。"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "購入時の単品購入価格"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "パートに変換"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
-msgstr ""
+msgstr "数量が在庫数を超えています"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "部品が追跡可能に設定されていません"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "数量は整数でなければなりません。"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "数量は在庫数 ({self.quantity}) を超えてはなりません。"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "シリアル番号はリストとして提供されなければなりません"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "数量がシリアル番号と一致しません"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
-msgstr ""
+msgstr "構造上ロケーションに在庫を割り当てることはできません"
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "テストテンプレートが存在しません"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "在庫商品が販売注文に割り当てられました"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "ストックアイテムが他のアイテムに装着されている場合"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "在庫商品には他の商品が含まれています。"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "在庫商品が顧客に割り当てられました"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "在庫品は現在生産中です。"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "連番在庫の統合はできません"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "在庫品の重複"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "在庫品目は同じ部品を参照してください。"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "在庫品は同じサプライヤーの部品を参照する必要があります。"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "在庫状況コードが一致していること"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "在庫がないため移動できません。"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "ストックアイテムのトラッキング"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "記入上の注意"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "在庫品テスト結果"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "このテストには値を指定する必要があります。"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "このテストには添付ファイルをアップロードする必要があります。"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "このテストでは無効な値です。"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "試験結果"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "テスト出力値"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "試験結果添付"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "テストノート"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "テストステーション"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "試験が実施された試験ステーションの識別子。"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "開始"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "テスト開始のタイムスタンプ"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "修了済み"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "テスト終了のタイムスタンプ"
@@ -8662,43 +8662,43 @@ msgstr "シリアル番号を生成する部品を選択します。"
msgid "Quantity of serial numbers to generate"
msgstr "生成するシリアル番号の数"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "この結果のテストテンプレート"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
-msgstr ""
+msgstr "この部品に該当するテストが見つかりませんでした"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "テンプレートIDまたはテスト名が必要です。"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "試験終了時刻を試験開始時刻より早くすることはできません。"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "親アイテム"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "親株式"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "数量はパック数です。"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
-msgstr ""
+msgstr "パッケージサイズを使用"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "新しい商品のシリアル番号の入力"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "サプライヤー品番"
@@ -8725,15 +8725,15 @@ msgstr "シリアル化するストックアイテムの数を入力"
#: stock/serializers.py:685 stock/serializers.py:728 stock/serializers.py:766
#: stock/serializers.py:904
msgid "No stock item provided"
-msgstr ""
+msgstr "在庫品目がしていされていません"
#: stock/serializers.py:693
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "数量は在庫数 ({q}) を超えてはなりません。"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "仕向け地"
@@ -8805,103 +8805,103 @@ msgstr "ステータスを変更するストックアイテムを選択"
msgid "No stock items selected"
msgstr "ストックアイテムが選択されていません"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "サブロケーション"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "親株式所在地"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "パーツは販売可能でなければなりません"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "商品が販売オーダーに割り当てられています。"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "アイテムがビルドオーダーに割り当てられています。"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "在庫アイテムを割り当てるお客様"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "選択された企業は顧客ではありません"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "株式譲渡に関する注意事項"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "在庫品のリストが必要です。"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "株式併合に関する注意事項"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "不一致のサプライヤーを許可"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "異なるサプライヤの部品を持つ在庫品目をマージできるようにします。"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "不一致の状態を許可"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "異なるステータスコードを持つストックアイテムをマージすることができます。"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "少なくとも2つのストックアイテムを提供する必要があります。"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "変化なし"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "StockItem 主キー値"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "在庫がありません"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
-msgstr ""
+msgstr "在庫品目は既に在庫にあります"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
-msgstr ""
+msgstr "数量は負の数であってはなりません。"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "株式取引に関する注記"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
-msgstr ""
+msgstr "既存の在庫に統合します"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
-msgstr ""
+msgstr "可能なら、返品された商品を既存の在庫商品に統合してください"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "次のシリアル番号"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "以前のシリアル番号"
@@ -8959,11 +8959,11 @@ msgstr "手動在庫削除が完了しました"
#: stock/status_codes.py:56
msgid "Serialized stock items"
-msgstr ""
+msgstr "シリアル番号管理の在庫品目"
#: stock/status_codes.py:58
msgid "Returned to stock"
-msgstr ""
+msgstr "在庫に戻りました"
#: stock/status_codes.py:61
msgid "Location changed"
@@ -9108,12 +9108,12 @@ msgstr "保留中のデータベース移行があり、注意が必要です。
#: templates/config_error.html:6 templates/config_error.html:10
msgid "Configuration Error"
-msgstr ""
+msgstr "設定エラー"
#: templates/config_error.html:11
#, python-format
msgid "The %(inventree_title)s server raised a configuration error"
-msgstr ""
+msgstr "%(inventree_title)sサーバーで設定エラーが発生しました"
#: templates/email/build_order_completed.html:9
#: templates/email/canceled_order_assigned.html:9
@@ -9169,15 +9169,15 @@ msgstr "この部品またはその部品の一部であるカテゴリの通知
#: templates/email/stale_stock_notification.html:10
msgid "The following stock items are approaching their expiry dates:"
-msgstr ""
+msgstr "以下の在庫品目は、まもなく有効期限が切れます:"
#: templates/email/stale_stock_notification.html:23
msgid "Days Until Expiry"
-msgstr ""
+msgstr "有効期限までの日数"
#: templates/email/stale_stock_notification.html:57
msgid "You are receiving this email because you are subscribed to notifications for these parts"
-msgstr ""
+msgstr "このメールを受け取ったのは、これらの部品に関する通知を購読しているためです"
#: users/admin.py:101
msgid "Users"
@@ -9383,83 +9383,83 @@ msgstr "セールスオーダー"
msgid "Return Orders"
msgstr "返品注文"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "ユーザー名"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "名"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "ユーザーの名"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "姓"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "ユーザーの姓"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "ユーザーのメールアドレス"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "スタッフ"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "このユーザーにはスタッフ権限がありますか?"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "スーパーユーザー"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "このユーザーはスーパーユーザーですか?"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "このユーザーアカウントはアクティブですか"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "このフィールドを調整できるのはスーパーユーザーのみです。"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
-msgstr ""
+msgstr "パスワード"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
-msgstr ""
+msgstr "ユーザーのパスワード"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
-msgstr ""
+msgstr "警告を上書きします"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
-msgstr ""
+msgstr "パスワードルールに関する警告を無効にする"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "ユーザーを作成する権限がありません"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "アカウントが作成されました"
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "パスワードリセット機能を使ってログインしてください"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "InvenTreeへようこそ"
diff --git a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po
index 8e9847afca..529da77acc 100644
--- a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr ""
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "이 모델을 볼 수 있는 권한이 없습니다."
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr ""
@@ -112,13 +112,13 @@ msgstr "날짜 입력"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "메모"
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "연결 오류"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "이미지 크기가 너무 큽니다!"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "이메일"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "이름"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "설명"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "설명 (선택 사항)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "바코드 데이터"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "서버 오류"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "유효하지 않은 값"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "분류"
@@ -666,80 +666,80 @@ msgstr "최대 날짜"
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "소모품"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "선택사항"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "수량"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "시리얼 번호 (일련번호)"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po
index c166ce8cbe..21ae930a84 100644
--- a/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Lithuanian\n"
"Language: lt_LT\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API galinis taškas nerastas"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Masiniam veiksmui turi būti pateiktas elementų arba filtrų sąrašas"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Elementai turi būti pateikti kaip sąrašas"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Pateiktas neteisingas elementų sąrašas"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "\"Filtrai turi būti pateikti kaip žodynas"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Pateikti neteisingi filtrai"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Filtras „all“ gali būti naudojamas tik su reikšme „true“"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Nė vienas elementas neatitinka pateiktų kriterijų"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Vartotojas neturi teisių peržiūrėti šio modelio"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Nepavyko konvertuoti {original} į {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Pateiktas neteisingas kiekis"
@@ -112,13 +112,13 @@ msgstr "Įveskite datą"
msgid "Invalid decimal value"
msgstr "Neteisinga dešimtainė reikšmė"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Pastabos"
@@ -171,35 +171,35 @@ msgstr "Pašalinkite HTML žymes iš šios reikšmės"
msgid "Data contains prohibited markdown content"
msgstr "Duomenyse yra draudžiamo „markdown“ turinio"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Ryšio klaida"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Serveris grąžino netinkamą būsenos kodą"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Įvyko išimtis"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Serveris grąžino neteisingą „Content-Length“ reikšmę"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Paveikslėlio dydis per didelis"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Paveikslėlio atsisiuntimas viršijo maksimalų leistiną dydį"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Nutolęs serveris grąžino tuščią atsakymą"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Nurodytas URL nėra tinkamas paveikslėlio failas"
@@ -207,11 +207,11 @@ msgstr "Nurodytas URL nėra tinkamas paveikslėlio failas"
msgid "Log in to the app"
msgstr "Prisijungti prie programos"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "El. paštas"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Prieš atliekant bet kokius veiksmus, privalote įjungti dviejų veiksnių autentifikavimą."
@@ -255,133 +255,133 @@ msgstr "Nuoroda turi atitikti reikalaujamą šabloną"
msgid "Reference number is too large"
msgstr "Nuorodos numeris per didelis"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Neteisingas pasirinkimas"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Pavadinimas"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Aprašymas"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Aprašymas (neprivalomas)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Kelias"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Po tuo pačiu pirminiu elementu negali būti pasikartojančių pavadinimų"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Pastabos su „Markdown“ (neprivalomas)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Brūkšninio kodo duomenys"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Trečiosios šalies brūkšninio kodo duomenys"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Brūkšninio kodo maiša"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Unikali brūkšninio kodo duomenų maiša\""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Rastas esamas brūkšninis kodas"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Užduoties klaida"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Foninė užduotis '{f}' nepavyko po {n} bandymų"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serverio klaida"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Serveris užfiksavo klaidą."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Paveikslėlis"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Turi būti teisingas skaičius"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valiuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Pasirinkite valiutą iš galimų variantų"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Neteisinga reikšmė"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Nutolęs paveikslėlis"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "Nutolusio paveikslėlio failo URL"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Paveikslėlių atsisiuntimas iš nutolusio URL neįjungtas"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Nepavyko atsisiųsti paveikslėlio iš nutolusio URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Neteisingas fizinis vienetas"
msgid "Not a valid currency code"
msgstr "Netinkamas valiutos kodas"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Užsakymo būsena"
@@ -562,21 +562,21 @@ msgstr "Užsakymo būsena"
msgid "Parent Build"
msgstr "Pirminė gamyba"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Įtraukti variantus"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Įtraukti variantus"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Įtraukti variantus"
msgid "Part"
msgstr "Detalė"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategorija"
@@ -666,80 +666,80 @@ msgstr "Maksimali data"
msgid "Exclude Tree"
msgstr "Neįtraukti medžio struktūros"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Prieš ištrinant gamybą, ji turi būti atšaukta"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Sunaudojama"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Pasirinktinai"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Surinkimas"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Sekama"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testuojama"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Liko neįvykdytų užsakymų"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Priskirta"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Prieinama"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Užsakyta"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Gamybos užsakymas"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Vieta"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "Tikslinė data turi būti po pradžios datos"
msgid "Build Order Reference"
msgstr "Gamybos užsakymo nuoroda"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Pardavimo užsakymo nuoroda"
msgid "SalesOrder to which this build is allocated"
msgstr "Pardavimo užsakymas, kuriam ši gamyba priskirta"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Šaltinio vieta"
@@ -857,17 +857,17 @@ msgstr "Gamybos būsena"
msgid "Build status code"
msgstr "Gamybos būsenos kodas"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Partijos kodas"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Šios gamybos partijos kodas"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Sukūrimo data"
@@ -887,7 +887,7 @@ msgstr "Tikslinė užbaigimo data"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Planuojama gamybos pabaigos data. Po šios datos gamyba bus pavėluota."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Užbaigimo data"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Vartotojas, kuris išdavė šį gamybos užsakymą"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Atsakingas"
@@ -913,12 +913,12 @@ msgstr "Atsakingas"
msgid "User or group responsible for this build order"
msgstr "Vartotojas ar grupė, atsakinga už šį gamybos užsakymą"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Išorinė nuoroda"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Nuoroda į išorinį URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Šio gamybos užsakymo prioritetas"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Projekto kodas"
@@ -960,7 +960,7 @@ msgstr "Gamybos užsakymas {build} užbaigtas"
msgid "A build order has been completed"
msgstr "Gamybos užsakymas užbaigtas"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Sekamoms detalėms būtina nurodyti serijos numerius"
@@ -976,23 +976,23 @@ msgstr "Gamybos rezultatas jau užbaigtas"
msgid "Build output does not match Build Order"
msgstr "Gamybos rezultatas neatitinka gamybos užsakymo"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Kiekis turi būti didesnis nei nulis"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Kiekis negali viršyti rezultato kiekio"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Gamybos rezultatas {serial} nepraėjo visų privalomų testų"
@@ -1001,18 +1001,18 @@ msgstr "Gamybos rezultatas {serial} nepraėjo visų privalomų testų"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Gamybos užsakymo eilutės įrašas"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Gamybos objektas"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Gamybos objektas"
msgid "Quantity"
msgstr "Kiekis"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Reikalingas kiekis gamybos užsakymui"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Gamybos elementas turi nurodyti rezultatą, nes pagrindinė detalė pažymėta kaip sekama"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Pasirinktas atsargų elementas neatitinka BOM eilutės"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Atsargoms su serijos numeriais kiekis turi būti 1"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Priskirtas kiekis ({q}) negali viršyti galimo atsargų kiekio ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Atsargų elementas per daug paskirstytas"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Priskirtas kiekis turi būti didesnis nei nulis"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Atsargoms su serijos numeriais kiekis turi būti 1"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Pasirinktas atsargų elementas neatitinka BOM eilutės"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Atsargų elementas"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Šaltinio atsargų elementas"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Atsargų kiekis, skirtas paskirstyti į gamybą"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Įdiegti į"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Paskirties atsargų elementas"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Gamybos lygis"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Detalės pavadinimas"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Projekto kodo etiketė"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Gamybos rezultatas"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Gamybos rezultatas neatitinka pirminės gamybos"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Rezultato detalė neatitinka gamybos užsakymo detalės"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Šis gamybos rezultatas jau užbaigtas"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Šis gamybos rezultatas nėra visiškai paskirstytas"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Įveskite kiekį gamybos rezultatui"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Sekamoms detalėms reikalingas sveikasis kiekis"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Reikalingas sveikasis kiekis, nes komplektavimo žiniaraštyje yra sekamų detalių"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Serijos numeriai"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Įveskite serijos numerius gamybos rezultatams"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Atsargų vieta gamybos rezultatams"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Automatiškai priskirti serijos numerius"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Automatiškai priskirti reikalingas prekes su atitinkančiais serijos numeriais"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Šie serijos numeriai jau egzistuoja arba yra neteisingi"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Turi būti pateiktas gamybos rezultatų sąrašas"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Atsargų vieta brokuotiems rezultatams"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Atmesti priskyrimus"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Atmesti visus atsargų priskyrimus brokuotiems rezultatams"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Priežastis, dėl kurios gamybos rezultatas(-ai) buvo nurašytas(-i)"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Vieta, kur laikomi užbaigti gamybos rezultatai"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Priimti nepilną priskyrimą"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Užbaigti rezultatus, net jei atsargos dar nėra pilnai priskirtos"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Sunaudoti priskirtas atsargas"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Sunaudoti bet kokias šiai gamybai jau priskirtas atsargas"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Pašalinti nebaigtus rezultatus"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Ištrinti visus nebaigtus gamybos rezultatus"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Neleidžiama"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Priimti kaip sunaudotą šio gamybos užsakymo metu"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Panaikinkite priskyrimus prieš užbaigiant šį gamybos užsakymą"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Per daug paskirstytos atsargos"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Kaip norite elgtis su papildomai šiam gamybos užsakymui priskirtomis atsargomis"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Kai kurios atsargos paskirstytos per daug"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Priimti nepriskirtą"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Priimti, kad atsargos nebuvo visiškai priskirtos šiam gamybos užsakymui"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Reikalingos atsargos nėra visiškai priskirtos"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Priimti nepilną"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Priimti, kad ne visi reikalingi gamybos rezultatai buvo užbaigti"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Reikalingas gamybos kiekis nebuvo užbaigtas"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Gamybos užsakymas turi nebaigtų antrinių gamybų"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Gamybos užsakymas turi būti gamybos būsenoje"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Gamybos užsakymas turi nebaigtų rezultatų"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Gamybos eilutė"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Gamybos rezultatas"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Gamybos rezultatas turi būti susietas su ta pačia gamyba"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Gamybos eilutės įrašas"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part turi būti ta pati detalė kaip ir gamybos užsakyme"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Prekė turi būti atsargose"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Viršytas prieinamas kiekis ({q})"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Sekamų detalių priskyrymui turi būti nurodytas gamybos rezultatas"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Negalima nurodyti gamybos rezultato nesekamoms detalėms"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Turi būti pateikti paskirstymo elementai"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Atsargų vieta, iš kurios bus imamos detalės (palikite tuščią, jei tinka bet kuri vieta)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Neįtraukti vietos"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Neįtraukti atsargų iš šios pasirinktos vietos"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Keičiamos atsargos"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Atsargos iš skirtingų vietų gali būti naudojamos pakaitomis"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Pakaitinės atsargos"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Leisti priskirti pakaitines detales"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Pasirenkami elementai"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Priskirti papildomus BOM elementus gamybos užsakymui"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Nepavyko paleisti automatinio paskirstymo užduoties"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "BOM nuoroda"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "BOM detalės ID"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "BOM detalės pavadinimas"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Gamyba"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Tiekėjo detalė"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Priskirtas kiekis"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Gamybos nuoroda"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Detalės kategorijos pavadinimas"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Sekama"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Paveldėta"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Leisti variantus"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "BOM elementas"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Gamyboje"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Išorinės atsargos"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Prieinamos atsargos"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Prieinamos pakaitinės atsargos"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Prieinamos variantų atsargos"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Vėluojantis gamybos užsakymas"
msgid "Build order {bo} is now overdue"
msgstr "Gamybos užsakymas {bo} dabar vėluoja"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Yra nuoroda"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Yra failas"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Vartotojas neturi teisės ištrinti šių priedų"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Vartotojas neturi teisės ištrinti šio priedo"
@@ -1530,7 +1522,11 @@ msgstr "Nepateikta jokių galiojančių valiutos kodų"
msgid "No plugin"
msgstr "Nėra papildinio"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Projekto kodo etiketė"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Atnaujinta"
@@ -1558,7 +1554,7 @@ msgstr "Projekto aprašymas"
msgid "User or group responsible for this project"
msgstr "Vartotojas arba grupė, atsakinga už šį projektą"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Nustatymo raktas"
@@ -1590,550 +1586,550 @@ msgstr "Reikšmė neatitinka patikros taisyklių"
msgid "Key string must be unique"
msgstr "Raktas turi būti unikalus"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Vartotojas"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Kiekio ribinis taškas kainai"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Kaina"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Vieneto kaina nurodytam kiekiui"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Galutinis taškas"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Galutinis taškas, kuriuo priimamas šis webhook'as"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Šio webhook'o pavadinimas"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktyvus"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Ar šis webhook'as aktyvus"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Raktas"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Prieigos raktas"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Slaptas raktas"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Bendras slaptas HMAC raktas"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Pranešimo ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Unikalus pranešimo identifikatorius"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Pagrindinis serveris"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Serveris, iš kurio gautas pranešimas"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Antraštė"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Šio pranešimo antraštė"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Turinys"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Šio pranešimo turinys"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Galutinis taškas, kuriame gautas pranešimas"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Apdorota"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Ar darbas su šiuo pranešimu baigtas?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "ID"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Pavadinimas"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Nuoroda"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Paskelbta"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autorius"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Santrauka"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Perskaityta"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Ar ši naujiena buvo perskaityta?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Paveikslėlio failas"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Modelio tipas, kuriam priskiriamas šis paveikslėlis"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "Modelio ID, kuriam priskiriamas šis paveikslėlis"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Pasirinktinis vienetas"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Vieneto simbolis turi būti unikalus"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Vieneto pavadinimas turi būti tinkamas identifikatorius"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Vieneto pavadinimas"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Simbolis"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Nebūtinas vieneto simbolis"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Apibrėžimas"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Vieneto apibrėžimas"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Priedas"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Trūksta failo"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Trūksta išorinės nuorodos"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Modelio tipas"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Modelio tipas, kuriam skirtas paveikslėlis"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Pasirinkite failą priedui"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Komentaras"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Komentaras prie priedo"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Įkėlimo data"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Failo įkėlimo data"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Failo dydis"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Failo dydis baitais"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Netinkamas modelio tipas priedui"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Pasirinktinė būsena"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Pasirinktinės būsenos"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Nuorodos būsenų rinkinys"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Būsenų rinkinys, papildomas šia pasirinktine būsena"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Loginis raktas"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Loginis būsenos raktas, atitinkantis šią pasirinkitinę būseną"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Reikšmė"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Skaitinė reikšmė, saugoma modelio duomenų bazėje"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Būsenos pavadinimas"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etiketė"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etiketė, rodoma vartotojo sąsajoje"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Spalva"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Spalva, rodoma vartotojo sąsajoje"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modelis"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Modelis, su kuriuo susieta būsena"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Turi būti pasirinktas modelis"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Turi būti pasirinktas raktas"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Turi būti pasirinktas loginis raktas"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Raktas turi skirtis nuo loginio rakto"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Turi būti pateikta tinkama nuorodos būsenos klasė"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Raktas turi skirtis nuo nuorodos būsenų loginių raktų"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "Loginis raktas turi būti tarp nuorodos būsenų loginių raktų"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Pavadinimas turi skirtis nuo nuorodos būsenų pavadinimų"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Pasirinkimų sąrašas"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Pasirinkimų sąrašai"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Pasirinkimų sąrašo pavadinimas"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Pasirinkimų sąrašo aprašymas"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Užrakinta"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Ar šis sąrašas užrakintas?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Ar šį pasirinkimų sąrašą galima naudoti?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Šaltinio papildinys"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Papildinys, pateikiantis šį pasirinkimų sąrašą"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Šaltinio eilutė"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Neprivaloma eilutė, identifikuojanti šaltinį, naudotą šiam sąrašui"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Numatytasis įrašas"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Numatytasis šio pasirinkimų sąrašo įrašas"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Sukurta"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Data ir laikas, kada buvo sukurtas pasirinkimų sąrašas"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Paskutinį kartą atnaujinta"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Data ir laikas, kada paskutinį kartą buvo atnaujintas sąrašas"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Pasirinkimų sąrašo įrašas"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Pasirinkimų sąrašo įrašai"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Pasirinkimų sąrašas, kuriam priklauso šis įrašas"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Pasirinkimų sąrašo įrašo reikšmė"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Pasirinkimų įrašo etiketė"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Pasirinkimų įrašo aprašymas"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Ar šis sąrašo įrašas aktyvus?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Parametro šablonas"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Žymimojo laukelio parametrai negali turėti matavimo vienetų"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Žymimojo laukelio parametrai negali turėti pasirinkimų"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Pasirinkimai turi būti unikalūs"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Parametro šablono pavadinimas turi būti unikalus"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Parametro pavadinimas"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Vienetai"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Fiziniai šio parametro vienetai"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Parametro aprašymas"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Žymimasis laukelis"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Ar šis parametras yra žymimasis laukelis?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Pasirinkimai"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Galimi pasirinkimai šiam parametrui (atskirti kableliais)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Pasirinkimų sąrašas šiam parametrui"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Įjungta"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Neteisingas pasirinkimas parametro reikšmei"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Šablonas"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Data"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Parametro reikšmė"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Parametro reikšmė"
msgid "Note"
msgstr "Pastaba"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Neprivalomas pastabų laukas"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Brūkšninio kodo nuskaitymas"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Brūkšninio kodo duomenys"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Vartotojas, nuskaitęs brūkšninį kodą"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Laiko žymė"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Brūkšninio kodo nuskaitymo data ir laikas"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "URL galutinis taškas, kuris apdorojo brūkšninį kodą"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontekstas"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Konteksto duomenys brūkšninio kodo nuskaitymui"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Atsakas"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Atsako duomenys iš brūkšninio kodo nuskaitymo"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Rezultatas"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Ar brūkšninio kodo nuskaitymas buvo sėkmingas?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Raktas"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} atšaukta"
msgid "A order that is assigned to you was canceled"
msgstr "Užsakymas, kuris buvo jums priskirtas, buvo atšauktas"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Gautos prekės"
@@ -2351,93 +2347,101 @@ msgstr "Prekės buvo gautos pagal pirkimo užsakymą"
msgid "Items have been received against a return order"
msgstr "Prekės buvo gautos pagal grąžinimo užsakymą"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Nurodo, ar nustatymą pakeičia aplinkos kintamasis"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Nepaisyti"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Vykdoma"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Laukiančios užduotys"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Suplanuotos užduotys"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Nepavykusios užduotys"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Užduoties ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Unikalus užduoties ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Užraktas"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Užrakto laikas"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Užduoties pavadinimas"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funkcija"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Funkcijos pavadinimas"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumentai"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Užduoties argumentai"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Rakto argumentai"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Užduoties rakto argumentai"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Failo pavadinimas"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Modelio tipas"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Vartotojas neturi leidimo kurti ar redaguoti šio modelio priedų"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Pasirinkimų sąrašas yra užrakintas"
@@ -2445,1128 +2449,1132 @@ msgstr "Pasirinkimų sąrašas yra užrakintas"
msgid "No group"
msgstr "Nėra grupės"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Svetainės URL yra užrakintas konfigūracijoje"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Reikalingas paleidimas iš naujo"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Nustatymas buvo pakeistas ir reikia paleisti serverį iš naujo"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Laukiančios migracijos"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Laukiančių duomenų bazės migracijų skaičius"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "Egzemplioriaus ID"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Unikalus identifikatorius šiam InvenTree egzemplioriui"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Pranešimo ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Skelbti serverio egzemplioriaus ID serverio būsenos informacijoje (neprisijungus)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Serverio egzemplioriaus pavadinimas"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Serverio egzemplioriaus pavadinimas kaip eilutė"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Naudoti egzemplioriaus pavadinimą"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Naudoti egzemplioriaus pavadinimą antraštės juostoje"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Apriboti `apie` rodymą"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "`Apie` langą rodyti tik super-vartotojams"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Įmonės pavadinimas"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Vidinis įmonės pavadinimas"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Pagrindinis URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Pagrindinis URL šiam serverio egzemplioriui"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Numatytoji valiuta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Pasirinkti pagrindinę valiutą kainų skaičiavimui"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Palaikomos valiutos"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Palaikomų valiutų kodų sąrašas"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Valiutų atnaujinimo intervalas"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Kaip dažnai atnaujinti valiutų kursus (nulis – išjungti)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dienos"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Valiutų atnaujinimo papildinys"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Naudotinas valiutų atnaujinimo papildinys"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Atsisiųsti iš URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Leisti atsisiųsti išorinius paveikslėlius ir failus iš nuorodų"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Atsisiuntimo dydžio riba"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Didžiausias leistinas atsisiunčiamo paveikslėlio dydis"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Naudojamas user-agent atsisiuntimui iš URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Leisti pakeisti user-agent, naudojamą atsisiunčiant paveikslėlius ir failus iš išorinio URL (palikite tuščią, jei naudoti numatytąjį)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Griežtas URL tikrinimas"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Reikalauti schemos nurodymo tikrinant URL"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Atnaujinimų tikrinimo intervalas"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Kaip dažnai tikrinti atnaujinimus (nulis – išjungti)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatinė atsarginė kopija"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Įjungti automatinį duomenų bazės ir failų atsarginį kopijavimą"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Automatinio atsarginės kopijos kūrimo intervalas"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Nurodykite dienų skaičių tarp atsarginių kopijų kūrimo"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Užduočių ištrynimo intervalas"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Foninių užduočių rezultatai bus ištrinti po nurodyto dienų skaičiaus"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Klaidų žurnalo ištrynimo intervalas"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Klaidų žurnalai bus ištrinti po nurodyto dienų skaičiaus"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Pranešimų ištrynimo intervalas"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Vartotojų pranešimai bus ištrinti po nurodyto dienų skaičiaus"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Brūkšninių kodų palaikymas"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Įjungti brūkšninių kodų skaitytuvo palaikymą žiniatinklio sąsajoje"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Išsaugoti brūkšninių kodų nuskaitymus"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Brūkšninių kodų nuskaitymo rezultatus išsaugoti duomenų bazėje"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Maksimalus nuskaitymų skaičius"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Maksimalus saugomų brūkšninių kodų nuskaitymų skaičius"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Brūkšninio kodo įvesties delsimas"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Brūkšninio kodo įvesties apdorojimo delsos laikas"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Brūkšninių kodų palaikymas per kamerą"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Leisti brūkšninių kodų nuskaitymą per naršyklės kamerą"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Rodyti brūkšninio kodo duomenis"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Rodyti brūkšninio kodo duomenis naršyklėje kaip tekstą"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Brūkšninio kodo generavimo papildinys"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Papildinys vidiniam brūkšninių kodų generavimui"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Detalių versijos"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Įjungti versijos lauką detalėms"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Tik surinkimo versijoms"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Leisti versijas tik surenkamoms detalėms"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Leisti pašalinti iš surinkimo"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Leisti ištrinti detales, kurios yra naudojamos surinkimuose"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN reguliarioji išraiška"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Reguliariosios išraiškos šablonas detalių IPN tikrinimui"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Leisti pasikartojančius IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Leisti kelioms detalėms turėti tą patį IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Leisti redaguoti IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Leisti keisti IPN reikšmę redaguojant detalę"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Kopijuoti detalės BOM duomenis"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Kopijuoti BOM duomenis pagal nutylėjimą dubliuojant detalę"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Kopijuoti detalės parametrus"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Kopijuoti parametrų duomenis pagal nutylėjimą dubliuojant detalę"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Kopijuoti detalės testavimo duomenis"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Kopijuoti testavimo duomenis pagal nutylėjimą dubliuojant detalę"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kopijuoti kategorijų parametrų šablonus"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kopijuoti kategorijų parametrų šablonus kuriant detalę"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Detalės pagal nutylėjimą yra šablonai"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Detalės pagal nutylėjimą gali būti surenkamos iš kitų komponentų"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponentas"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Detalės pagal nutylėjimą gali būti naudojamos kaip sub-komponentai"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Galima įsigyti"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Detalės pagal nutylėjimą gali būti įsigyjamos"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Parduodama"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Detalės pagal nutylėjimą gali būti parduodamos"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Detalės pagal nutylėjimą gali būti sekamos"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuali"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Detalės pagal nutylėjimą yra virtualios"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Rodyti susijusias detales"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Rodyti susijusias detales pasirinktai detalei"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Pradiniai atsargų duomenys"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Leisti sukurti pradinę atsargą pridedant naują detalę"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Pradiniai tiekėjo duomenys"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Leisti sukurti pradinius tiekėjo duomenis pridedant naują detalę"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Detalės pavadinimo rodymo formatas"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Detalės pavadinimo rodymo formatas"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Detalės kategorijos numatytoji piktograma"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Detalės kategorijos numatytoji piktograma (tuščia reiškia, kad nenaudojama)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Mažiausias kainos dešimtainių skaičių kiekis"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Minimalus dešimtainių skaitmenų skaičius rodomas kainodaros duomenyse"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Didžiausias kainos dešimtainių skaičių kiekis"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Didžiausias dešimtainių skaitmenų skaičius rodomas kainodaros duomenyse"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Naudoti tiekėjo kainas"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Įtraukti tiekėjų kainų lygius į bendrą kainodaros skaičiavimą"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Pirkimų istorija keičia kainas"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Istorinės pirkimo kainos pakeičia tiekėjo kainų lygius"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Naudoti atsargų kainas"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Naudoti kainas iš rankiniu būdu įvestų atsargų duomenų kainodaros skaičiavimui"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Atsargų kainų galiojimo trukmė"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Pašalinti senesnes nei nurodytas dienų skaičius atsargas iš kainodaros skaičiavimų"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Naudoti variantų kainas"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Įtraukti variantų kainas į bendrą kainodaros skaičiavimą"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Tik aktyvūs variantai"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Naudoti tik aktyvius detalių variantus kainodarai"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Kainodaros atnaujinimo intervalas"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Dienų skaičius iki automatinio detalių kainų atnaujinimo"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Vidinės kainos"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Įjungti vidines kainas detalėms"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Vidinės kainos viršenybė"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Jei yra, vidinės kainos pakeičia bendrus kainodaros skaičiavimus"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Įjungti etikečių spausdinimą"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Įjungti etikečių spausdinimą iš žiniatinklio sąsajos"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Etiketės vaizdo DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "DPI raiška generuojant vaizdus etikečių spausdinimo papildiniams"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Įjungti ataskaitas"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Įjungti ataskaitų generavimą"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Derinimo režimas"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Generuoti ataskaitas derinimo režimu (HTML išvestis)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Registruoti ataskaitų klaidas"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Registruoti klaidas, įvykusias generuojant ataskaitas"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Puslapio dydis"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Numatytasis PDF ataskaitų puslapio dydis"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Reikalauti parametrų vienetų"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Jei nurodyti vienetai, parametro reikšmės turi atitikti nurodytus vienetus"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Globaliai unikalūs serijiniai numeriai"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Atsargų serijos numeriai turi būti globaliai unikalūs"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Ištrinti išnaudotas atsargas"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Nustato numatytą elgseną, kai atsargos yra išnaudotos"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Partijos kodo šablonas"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Šablonas numatytiesiems atsargų partijos kodams generuoti"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Atsargų galiojimas"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Įjungti atsargų galiojimo funkcionalumą"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Parduoti pasibaigusias galioti atsargas"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Leisti parduoti pasibaigusias galioti atsargas"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Atsargų senėjimo laikas"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Dienų skaičius, po kurio atsargos laikomos pasenusiomis iki jų galiojimo pabaigos"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Naudoti pasibaigusias galioti atsargas gamyboje"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Leisti naudoti pasibaigusias galioti atsargas gamyboje"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Atsargų nuosavybės kontrolė"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Įjungti atsargų vietų ir vienetų nuosavybės kontrolę"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Atsargų vietos numatytoji piktograma"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Atsargų vietos numatytoji piktograma (tuščia reiškia nenaudojama)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Rodyti sumontuotas atsargas"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Rodyti sumontuotas atsargas atsargų lentelėse"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Tikrinti BOM montuojant atsargas"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Sumontuotos atsargos turi būti pirminio gaminio BOM"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Leisti perkelti neturimas atsargas"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Leisti perkelti atsargas tarp vietų net jei jų nėra atsargose"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Gamybos užsakymo nuorodos šablonas"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Privalomas šablonas gamybos užsakymo nuorodos laukui generuoti"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Reikalauti atsakingo savininko"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Kiekvienam užsakymui turi būti priskirtas atsakingas savininkas"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Reikalauti aktyvios detalės"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Neleidžia kurti gamybos užsakymų neaktyvioms detalėms"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Reikalauti užrakintos detalės"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Neleidžia kurti gamybos užsakymų neužrakintoms detalėms"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Reikalauti galiojančio komplektavimo sąrašo (BOM)"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Neleidžia kurti gamybos užsakymų, kol BOM nėra patvirtintas"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Reikalauti uždarytų antrinių užsakymų"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Neleidžia užbaigti gamybos užsakymo, kol visi antriniai užsakymai neuždaryti"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blokuoti, kol testai bus išlaikyti"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Neleidžia užbaigti gaminių, kol visi privalomi testai nėra išlaikyti"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Įjungti grąžinimo užsakymus"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Įjungia grąžinimo užsakymų funkciją vartotojo sąsajoje"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Grąžinimo užsakymo nuorodos šablonas"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Būtinas šablonas grąžinimo užsakymo nuorodos laukui generuoti"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Redaguoti užbaigtus grąžinimo užsakymus"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Leisti redaguoti grąžinimo užsakymus po jų užbaigimo"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Pardavimo užsakymo nuorodos šablonas"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Būtinas šablonas pardavimo užsakymo nuorodos laukui generuoti"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Numatytasis siuntinys pardavimo užsakymui"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Leisti automatiškai sukurti siuntinį kartu su pardavimo užsakymu"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Redaguoti užbaigtus pardavimo užsakymus"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Leisti redaguoti pardavimo užsakymus po jų išsiuntimo arba užbaigimo"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Pažymėti išsiųstus užsakymus kaip užbaigtus"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Pardavimo užsakymai, pažymėti kaip išsiųsti, bus automatiškai užbaigti, praleidžiant būseną „išsiųsta“"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Pirkimo užsakymo nuorodos šablonas"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Būtinas šablonas pirkimo užsakymo nuorodos laukui generuoti"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Redaguoti užbaigtus pirkimo užsakymus"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Leisti redaguoti pirkimo užsakymus po jų išsiuntimo arba užbaigimo"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Konvertuoti valiutą"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Konvertuoti prekių vertę į pagrindinę valiutą priimant prekes"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Automatiškai užbaigti pirkimo užsakymus"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Automatiškai pažymėti pirkimo užsakymus kaip užbaigtus, kai visos eilutės yra gautos"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Įjungti pamiršto slaptažodžio funkciją"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Leisti naudoti pamiršto slaptažodžio funkciją prisijungimo puslapyje"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Įjungti registraciją"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Leisti vartotojams savarankiškai registruotis prisijungimo puslapyje"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Įjungti vieningą prisijungimą (SSO)"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Įjungti vieningą prisijungimą (SSO) prisijungimo puslapyje"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Įjungti registraciją per SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Leisti vartotojams registruotis per SSO prisijungimo puslapyje"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Įjungti SSO grupių sinchronizavimą"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Įjungti InvenTree grupių sinchronizavimą su tapatybės tiekėjo (IdP) grupėmis"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSO grupės raktas"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Grupių atributo pavadinimas, kurį pateikia tapatybės tiekėjas (IdP)"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "SSO grupių susiejimas"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "SSO grupių susiejimas su vietinėmis InvenTree grupėmis. Jei vietinė grupė neegzistuoja, ji bus sukurta."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Pašalinti grupes, nepriklausančias SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Ar pašalinti vartotojui priskirtas grupes, jei jos nėra pateikiamos per IdP. Išjungus gali kilti saugumo problemų"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "El. paštas privalomas"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Reikalauti vartotojo el. pašto registracijos metu"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Automatiškai užpildyti SSO naudotojų duomenis"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Automatiškai užpildyti vartotojo informaciją pagal SSO paskyros duomenis"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Įvesti el. paštą du kartus"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Registracijos metu prašyti vartotojų du kartus įvesti el. paštą"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Įvesti slaptažodį du kartus"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Registracijos metu prašyti vartotojų du kartus įvesti slaptažodį"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Leidžiami domenai"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Riboti registraciją tik tam tikriems domenams (atskiriama kableliais, prasideda @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupė registruojantis"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Grupė, į kurią priskiriami nauji vartotojai registracijos metu. Jei įjungta SSO grupių sinchronizacija, ši grupė nustatoma tik tuo atveju, jei grupė negaunama iš IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Reikalauti kelių veiksnių autentifikacijos (MFA)"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Vartotojai privalo naudoti kelių veiksnių apsaugą."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Tikrinti įskiepius paleidimo metu"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Tikrina, ar visi įskiepiai įdiegti paleidžiant – naudoti konteinerių aplinkose"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Tikrinti įskiepių atnaujinimus"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Įjungti periodinius įdiegtų įskiepių atnaujinimų tikrinimus"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Įjungti URL integravimą"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Leisti įskiepiams pridėti URL maršrutus"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Įjungti navigacijos integraciją"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Leisti įskiepiams integruotis į navigaciją"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Įjungti programų integraciją"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Leisti įskiepiams pridėti programas"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Įjungti planavimo integraciją"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Leisti įskiepiams vykdyti suplanuotas užduotis"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Įjungti įvykių integraciją"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Leisti įskiepiams reaguoti į vidinius įvykius"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Įjungti sąsajos integraciją"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Leisti įskiepiams integruotis į vartotojo sąsają"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Įjungti projektų kodus"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Įjungti projektų kodų naudojimą projektų sekimui"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Neįtraukti išorinių vietų"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Automatinės inventorizacijos periodas"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Rodyti pilnus vartotojų vardus"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Rodyti pilnus vardus vietoj vartotojo vardų"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Rodyti vartotojų profilius"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Rodyti vartotojų profilius jų paskyros puslapyje"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Įjungti bandymų stoties duomenis"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Įjungti bandymų stoties duomenų rinkimą testų rezultatams"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "Detalė yra aktyvi"
msgid "Manufacturer is Active"
msgstr "Gamintojas yra aktyvus"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Tiekėjo detalė yra aktyvi"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Vidinė detalė yra aktyvi"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Tiekėjas yra aktyvus"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Gamintojas"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Įmonė"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Turi atsargų"
@@ -3969,7 +3977,7 @@ msgstr "Kontaininis telefono numeris"
msgid "Contact email address"
msgstr "Kontaktinis el. pašto adresas"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontaktinis asmuo"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adresas"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adresai"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Pasirinkite įmonę"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Adreso pavadinimas"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Pavadinimas, apibūdinantis adreso įrašą"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Pagrindinis adresas"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Nustatyti kaip pagrindinį adresą"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "1-a eilutė"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adreso 1-a eilutė"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "2-a eilutė"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Adreso 2-a eilutė"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Pašto kodas"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Miestas / regionas"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Pašto kodas, miestas / regionas"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Valstija / provincija"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Valstija arba provincija"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Šalis"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Adreso šalis"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Kurjerio siuntos pastabos"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Pastabos siuntų kurjeriui"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Vidinės siuntos pastabos"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Siuntimo pastabos vidiniam naudojimui"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Nuoroda į adreso informaciją (išorinė)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Gamintojo detalė"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Pagrindinė detalė"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Pasirinkite detalę"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Pasirinkite gamintoją"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Gamintojo detalės numeris (MPN)"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "Išorinės nuorodos į gamintojo detalės URL"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Gamintojo detalės aprašymas"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Pakuotės vienetai turi atitikti pagrindinės detalės vienetus"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Pakuotės vienetų kiekis turi būti didesnis už nulį"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Susieta gamintojo detalė turi nurodyti tą pačią pagrindinę detalę"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Tiekėjas"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Pasirinkite tiekėją"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Tiekėjo sandėlio numeris (SKU)"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Ar ši tiekėjo detalė aktyvi?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Pasirinkite gamintojo detalę"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "Išorinės nuorodos į tiekėjo detalės URL"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Tiekėjo detalės aprašymas"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "bazinė kaina"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimalus mokestis (pvz., sandėliavimo mokestis)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Pakuotė"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Detalės pakuotė"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Pakuotės kiekis"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Bendras kiekis vienoje pakuotėje. Palikite tuščią, jei prekė tiekiama po vieną."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "daugiklis"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Užsakymo daugiklis"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Tiekėjo turimas kiekis"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Prieinamumas atnaujintas"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Paskutinio prieinamumo duomenų atnaujinimo data"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Tiekėjo kainos ribos"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Grąžina pagrindinio adreso tekstinę išraišką. Ši savybė egzistuoja dėl suderinamumo su ankstesnėmis versijomis."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Numatytoji valiuta, naudojama šiam tiekėjui"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Įmonės pavadinimas"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Sandėlyje"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Įvyko klaida eksportuojant duomenis"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Duomenų eksporto įskiepis grąžino neteisingą duomenų formatą"
@@ -4418,7 +4418,7 @@ msgstr "Pradiniai eilutės duomenys"
msgid "Errors"
msgstr "Klaidos"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Galiojantis"
@@ -4530,7 +4530,7 @@ msgstr "Etiketės spausdinamų kopijų skaičius"
msgid "Connected"
msgstr "Prijungta"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Nežinoma"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Užsakymo nuoroda"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Neįvykdyta"
@@ -4670,7 +4670,7 @@ msgstr "Neįvykdyta"
msgid "Has Project Code"
msgstr "Turi projekto kodą"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Sukūrė"
@@ -4710,11 +4710,11 @@ msgstr "Tikslinė data po"
msgid "Has Pricing"
msgstr "Turi kainodarą"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Užbaigta prieš"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Užbaigta po"
@@ -4722,40 +4722,40 @@ msgstr "Užbaigta po"
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Užsakymas"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Užsakymas įvykdytas"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Vidinė detalė"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Užsakymas laukia vykdymo"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Užbaigta"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Turi siuntą"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Pirkimo užsakymas"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Pirkimo užsakymas"
msgid "Sales Order"
msgstr "Pardavimo užsakymas"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Bendra kaina"
msgid "Total price for this order"
msgstr "Bendra kaina už šį užsakymą"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Užsakymo valiuta"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Užsakymo valiuta (palikite tuščią, jei norite naudoti įmonės numatytąją valiutą)"
@@ -4805,240 +4805,240 @@ msgstr "Pradžios data turi būti prieš tikslinę datą"
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Užsakymo aprašymas (neprivalomas)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Pasirinkite projekto kodą šiam užsakymui"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Nuoroda į išorinį puslapį"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Pradžios data"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Numatyta pradžios data šiam užsakymui"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Tikslinė data"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Tikėtina užsakymo pristatymo data. Užsakymas bus vėluojantis po šios datos."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Išdavimo data"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Data, kada užsakymas buvo išduotas"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Vartotojas arba grupė, atsakinga už šį užsakymą"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Kontaktinis asmuo šiam užsakymui"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Įmonės adresas šiam užsakymui"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Užsakymo nuoroda"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Būsena"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Pirkimo užsakymo būsena"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Įmonė, iš kurios užsakomos prekės"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Tiekėjo nuoroda"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Tiekėjo užsakymo nuorodos kodas"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "gavo"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Data, kada užsakymas buvo užbaigtas"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Paskirties vieta"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Paskirties vieta gautoms prekėms"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Detalių tiekėjas turi atitikti pirkimo užsakymo tiekėją"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Eilutės įrašas neatitinka pirkimo užsakymo"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Kiekis turi būti teigiamas skaičius"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Klientas"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Įmonė, kuriai prekės parduodamos"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Pardavimo užsakymo būsena"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Kliento nuoroda"
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Kliento užsakymo nuorodos kodas"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Siuntos data"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "išsiuntė"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Užsakymas jau baigtas"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Užsakymas jau atšauktas"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Tik atviras užsakymas gali būti pažymėtas kaip užbaigtas"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Užsakymas negali būti užbaigtas, nes yra neišsiųstų siuntų"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "Užsakymas negali būti užbaigtas, nes yra nepriskirtų prekių"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Užsakymas negali būti užbaigtas, nes yra neužbaigtų eilučių"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "Užsakymas užrakintas ir negali būti keičiamas"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Prekės kiekis"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Eilutės įrašo nuoroda"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Eilutės įrašo pastabos"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Tikslinė šio eilutės įrašo data (palikite tuščią, jei norite naudoti užsakymo tikslinę datą)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Eilutės įrašo aprašymas (neprivalomas)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Papildomas kontekstas šiai eilutei"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Vieneto kaina"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Pirkimo užsakymo eilutės įrašas"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Tiekėjo detalė turi atitikti tiekėją"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Tiekėjo detalė"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Gauta"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Gautų prekių kiekis"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Pirkimo kaina"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Vieneto pirkimo kaina"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Patikrino"
msgid "User who checked this shipment"
msgstr "Vartotojas, patikrinęs šią siuntą"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Siunta"
@@ -5164,7 +5164,11 @@ msgstr "Negalima priskirti prekių eilutei, jei joje nėra detalės"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Priskiriamas kiekis negali viršyti atsargų kiekio"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Priskirtas kiekis turi būti didesnis nei nulis"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Kiekis turi būti 1, jei prekė turi serijos numerį"
@@ -5172,7 +5176,7 @@ msgstr "Kiekis turi būti 1, jei prekė turi serijos numerį"
msgid "Sales order does not match shipment"
msgstr "Pardavimo užsakymas nesutampa su siunta"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Siunta nesutampa su pardavimo užsakymu"
@@ -5256,247 +5260,247 @@ msgstr "Išlaidos, susijusios su šio eilutės įrašo grąžinimu ar remontu"
msgid "Return Order Extra Line"
msgstr "Grąžinimo užsakymo papildoma eilutė"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "Užsakymo ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "Užsakymo, kurį reikia dubliuoti, ID"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Kopijuoti eilutes"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Kopijuoti eilutės įrašus iš pradinio užsakymo"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Kopijuoti papildomas eilutes"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Kopijuoti papildomas eilutes iš pradinio užsakymo"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Eilutės įrašai"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Užbaigtos eilutės"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Dubliuoti užsakymą"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Nurodykite užsakymo dubliavimo parinktis"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Neteisingas užsakymo ID"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Tiekėjo pavadinimas"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Užsakymo atšaukti negalima"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Leisti užbaigti užsakymą su neužbaigtais eilutės įrašais"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Užsakyme yra neužbaigtų eilutės įrašų"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Užsakymas nėra atidarytas"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Automatinis kainų nustatymas"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Automatiškai apskaičiuoti pirkimo kainą pagal tiekėjo detalės duomenis"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Pirkimo kainos valiuta"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Sujungti elementus"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Sujungti elementus su ta pačia detale, paskirtimi ir tiksline data į vieną eilutės įrašą"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Vidinis detalės numeris"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Vidinis detalės pavadinimas"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Turi būti nurodyta tiekėjo detalė"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Turi būti nurodytas pirkimo užsakymas"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Tiekėjas turi atitikti pirkimo užsakymą"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Pirkimo užsakymas turi atitikti tiekėją"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Eilutės įrašas"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Pasirinkite paskirties vietą gautiems elementams"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Įveskite partijos kodą gaunamoms atsargoms"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Galiojimo data"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Įveskite galiojimo datą gaunamoms atsargoms"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Įveskite gaunamų atsargų serijos numerius"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Pakeisti gaunamų atsargų pakavimo informaciją"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Papildoma pastaba gaunamoms atsargoms"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Brūkšninis kodas"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Nuskaitytas brūkšninis kodas"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Brūkšninis kodas jau naudojamas"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Turi būti pateikti eilutės įrašai"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Turi būti nurodyta paskirties vieta"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Pateiktos brūkšninių kodų reikšmės turi būti unikalios"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Siuntos"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Užbaigtos siuntos"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Pardavimo kainos valiuta"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Paskirstyti elementai"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Nepateikta siuntos informacija"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Eilutės įrašas nėra susijęs su šiuo užsakymu"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Kiekis turi būti teigiamas"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Įveskite priskiriamus serijos numerius"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Siunta jau išsiųsta"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Siunta nėra susieta su šiuo užsakymu"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Nerasta atitikmenų šiems serijos numeriams"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Šie serijos numeriai nepasiekiami"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Grąžinimo užsakymo eilutės įrašas"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Eilutės įrašas neatitinka grąžinimo užsakymo"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Eilutės įrašas jau gautas"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Elementai gali būti priimami tik pagal vykdomus užsakymus"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Grąžinamas kiekis"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Eilutės kainos valiuta"
@@ -5647,7 +5651,7 @@ msgstr "Komponento detalė gali būti testuojama"
msgid "Uses"
msgstr "Naudoja"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Detalių kategorija"
@@ -5656,7 +5660,7 @@ msgstr "Detalių kategorija"
msgid "Part Categories"
msgstr "Detalių kategorijos"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Numatytoji vieta"
@@ -5664,7 +5668,7 @@ msgstr "Numatytoji vieta"
msgid "Default location for parts in this category"
msgstr "Numatytoji vieta detalėms šioje kategorijoje"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Struktūrinė"
@@ -5680,12 +5684,12 @@ msgstr "Numatytieji raktažodžiai"
msgid "Default keywords for parts in this category"
msgstr "Numatytieji raktažodžiai detalėms šioje kategorijoje"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Piktograma"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Piktograma (neprivaloma)"
@@ -5693,655 +5697,655 @@ msgstr "Piktograma (neprivaloma)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Negalite paversti šios detalių kategorijos struktūrine, nes kai kurios detalės jau jai priskirtos!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Detalių kategorijos parametro šablonas"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Numatytoji reikšmė"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Numatytoji parametro reikšmė"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Detalės"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Negalima ištrinti šios detalės, nes ji užrakinta"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Negalima ištrinti šios detalės, nes ji vis dar aktyvi"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Negalima ištrinti šios detalės, nes ji naudojama sirinkime"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Detalė „{self}“ negali būti naudojama detalių sąraše „{parent}“ (rekursyviai)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Detalė „{parent}“ naudojama detalių sąraše „{self}“ (rekursyviai)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN turi atitikti regex šabloną {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Detalė negali būti savo pačios versija"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Negalima sukurti detalės versijos, jei tai jau yra kita versija"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Turi būti nurodytas versijos kodas"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Versijos leidžiamos tik surinkimo detalėms"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Negalima sukurti šabloninės detalės versijos"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "Pagrindinė detalė turi būti susieta su tuo pačiu šablonu"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Atsargų elementas su šiuo serijos numeriu jau egzistuoja"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN dublikatų detalių nustatymuose naudoti negalima"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Tokia detalės versija jau egzistuoja."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Detalė su tokiu pavadinimu, IPN ir versija jau egzistuoja."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Detalės negali būti priskirtos struktūrinėms detalių kategorijoms!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Detalės pavadinimas"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Yra šablonas"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Ar ši detalė yra šabloninė detalė?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Ar ši detalė yra kitos detalės variantas?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variantas iš"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Detalės aprašymas (neprivalomas)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Raktažodžiai"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Detalės raktažodžiai, skirti pagerinti matomumą paieškos rezultatuose"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Detalės kategorija"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Detalės versija arba numeris"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Versija"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Ar ši detalė yra kitos detalės versija?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Versija iš"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Kur ši detalė paprastai laikoma?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Numatytasis tiekėjas"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Numatytoji tiekėjo detalė"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Numatytasis galiojimo laikas"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Šios detalės atsargų galiojimo laikas (dienomis)"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimalus atsargų kiekis"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Mažiausias leidžiamas atsargų kiekis"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Šios detalės matavimo vienetai"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Ar ši detalė gali būti pagaminta iš kitų detalių?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Ar ši detalė gali būti naudojama kitoms detalėms gaminti?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Ar ši detalė turi unikalių vienetų sekimą?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Ar šiai detalei gali būti priskirti bandymų rezultatai?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Ar ši detalė gali būti perkama iš išorinių tiekėjų?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Ar ši detalė gali būti parduodama klientams?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Ar ši detalė yra aktyvi?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Užrakintos detalės negali būti redaguojamos"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Ar tai virtuali detalė, pavyzdžiui, programinė įranga ar licencija?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "BOM kontrolinė suma"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Išsaugota BOM kontrolinė suma"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Detalių sąrašą patikrino"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Detalių sąrašo patikrinimo data"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Sukūręs vartotojas"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Atsakingas vartotojas už šią detalę"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Parduodamas kiekis"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Valiuta, naudojama kainų skaičiavimams kaupti"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimali BOM kaina"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Minimali komponentų detalių kaina"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maksimali BOM kaina"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Maksimali komponentų detalių kaina"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimali pirkimo kaina"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Mažiausia istorinė pirkimo kaina"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maksimali pirkimo kaina"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Didžiausia istorinė pirkimo kaina"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimali vidinė kaina"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Mažiausia kaina pagal vidinius kainų intervalus"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maksimali vidinė kaina"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Didžiausia kaina pagal vidinius kainų intervalus"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Mažiausia tiekėjo kaina"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Mažiausia detalės kaina iš išorinių tiekėjų"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Didžiausia tiekėjo kaina"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Didžiausia detalės kaina iš išorinių tiekėjų"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Mažiausia varianto kaina"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Apskaičiuota minimali variantų detalių kaina"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Didžiausia varianto kaina"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Apskaičiuota didžiausia variantų detalių kaina"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimali kaina"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Nepaisyti minimalios kainos"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maksimali kaina"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Nepaisyti maksimalios kainos"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Apskaičiuota bendra minimali kaina"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Apskaičiuota bendra maksimali kaina"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Minimali pardavimo kaina"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Mažiausia pardavimo kaina pagal kainų intervalus"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Didžiausia pardavimo kaina"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Didžiausia pardavimo kaina pagal kainų intervalus"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Mažiausia pardavimo kaina"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Mažiausia istorinė pardavimo kaina"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Didžiausia pardavimo kaina"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Didžiausia istorinė pardavimo kaina"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Detalė inventorizacijai"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Vienetų skaičius"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Atsargų įrašų skaičius inventorizacijos metu"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Bendras prieinamas atsargų kiekis inventorizacijos metu"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Data"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Inventorizacijos atlikimo data"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Minimali atsargų kaina"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Apytikslė minimali turimų atsargų kaina"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maksimali atsargų kaina"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Apytikslė maksimali turimų atsargų kaina"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Detalės kainų intervalai pardavimui"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Detalės bandymų šablonas"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Netinkamas šablono pavadinimas - turi būti bent vienas raidinis ar skaitinis simbolis"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Bandymų šablonus galima kurti tik testuojamoms detalėms"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Detalė jau turi bandymų šabloną su tokiu pačiu raktu"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Bandymo pavadinimas"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Įveskite bandymo pavadinimą"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Bandymo raktas"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Supaprastintas bandymo raktas"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Bandymo aprašymas"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Įveskite šio bandymo aprašymą"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Ar šis bandymas įjungtas?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Privalomas"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Ar šį bandymą būtina išlaikyti?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Reikalauja reikšmės"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Ar šiam bandymui reikia įvesti reikšmę pridedant rezultatą?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Reikalauja priedo"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Ar šiam bandymui reikia pridėti failą su rezultatu?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Galimi pasirinkimai šiam bandymui (atskirti kableliais)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "BOM elemento keisti negalima - surinkimas užrakintas"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "BOM elemento keisti negalima - varianto surinkimas užrakintas"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Pasirinkite pirminę detalę"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Pavaldi detalė"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Pasirinkite detalę, naudojamą BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "BOM reikalingas šios detalės kiekis"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Šis BOM elementas yra pasirenkamas"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Šis BOM elementas yra sunaudojamas (nesekamas gamybos užsakymuose)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "BOM nuoroda"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "BOM pastabos"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Kontrolinė suma"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "BOM eilutės kontrolinė suma"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Patvirtinta"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Šis BOM elementas patvirtintas"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Paveldima"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Šį BOM elementą paveldi variantų sąrašai"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Šiam BOM elementui galima naudoti variantinių detalių atsargas"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Sekamoms detalėms kiekis turi būti sveikasis skaičius"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Turi būti nurodyta pavaldi detalė"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "BOM elemento pakaitalas"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Pakaitinė detalė negali būti tokia pati kaip pagrindinė detalė"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Pagrindinis BOM elementas"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Pakaitinė detalė"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Detalė 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Detalė 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Pasirinkite susijusią detalę"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Pastaba šiam ryšiui"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Detalių ryšio negalima sukurti tarp detalės ir jos pačios"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Toks ryšys jau egzistuoja"
@@ -6465,203 +6469,199 @@ msgstr "Detalė su šiuo gamintojo numeriu (MPN) jau egzistuoja"
msgid "Supplier part matching this SKU already exists"
msgstr "Tiekėjo detalė su šiuo SKU jau egzistuoja"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Kategorijos pavadinimas"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Surinkimas"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Atsargos"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Versijos"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Tiekėjai"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Bendros atsargos"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Nepriskirtos atsargos"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Variantų atsargos"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Kopijuoti detalę"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Kopijuoti pradinius duomenis iš kitos detalės"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Pradinės atsargos"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Sukurti detalę su pradiniu atsargų kiekiu"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Tiekėjo informacija"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Pridėti pradinę tiekėjo informaciją šiai detalei"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Kopijuoti kategorijos parametrus"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Kopijuoti parametrų šablonus iš pasirinktos detalių kategorijos"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Esamas paveikslėlis"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Esamos detalės paveikslėlio failo pavadinimas"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Paveikslėlio failas neegzistuoja"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Patvirtinti visą komplektavimo žiniaraštį"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Galima surinkti"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Mažiausia kaina"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Pakeisti apskaičiuotą mažiausią kainą"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Mažiausios kainos valiuta"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Didžiausia kaina"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Pakeisti apskaičiuotą didžiausią kainą"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Didžiausios kainos valiuta"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Atnaujinti"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Atnaujinti šios detalės kainodarą"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Nepavyko konvertuoti iš nurodytų valiutų į {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Mažiausia kaina negali būti didesnė už didžiausią kainą"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Didžiausia kaina negali būti mažesnė už mažiausią kainą"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Pasirinkite pirminį surinkimą"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Pasirinkite komponentinę detalę"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Pasirinkite detalę, iš kurios kopijuoti BOM"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Pašalinti esamus duomenis"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Pašalinti esamus BOM elementus prieš kopijuojant"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Įtraukti paveldėtus"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Įtraukti BOM elementus, paveldėtus iš šabloninių detalių"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Praleisti netinkamas eilutes"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Įjunkite šią parinktį, jei norite praleisti netinkamas eilutes"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Kopijuoti pakaitines detales"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Kopijuoti pakaitines detales, kai kopijuojami BOM elementai"
@@ -6732,108 +6732,108 @@ msgstr "Nenurodytas joks veiksmas"
msgid "No matching action found"
msgstr "Atitinkantis veiksmas nerastas"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Brūkšninio kodo duomenims atitikmens nerasta"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Rastas atitikmuo brūkšninio kodo duomenims"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Modelis nepalaikomas"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Modelio egzempliorius nerastas"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Brūkšninis kodas atitinka esamą elementą"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Atitinkančių detalės duomenų nerasta"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Tiekėjo detalių atitikmenų nerasta"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Rastos kelios atitinkančios tiekėjo detalės"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Brūkšninio kodo duomenims atitinkančio įskiepio nerasta"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Atitinkanti tiekėjo detalė"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Prekė jau buvo priimta"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Tiekėjo brūkšniniam kodui įskiepis nerastas"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Rasti keli atitinkantys eilutės įrašai"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Atitinkančios eilutės įrašo nerasta"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Nepateiktas pardavimo užsakymas"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Brūkšninis kodas neatitinka jokio esamo atsargų elemento"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Atsargų elementas neatitinka eilutės įrašo"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Nepakanka atsargų"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Atsargų elementas priskirtas pardavimo užsakymui"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Nepakanka informacijos"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Rastas atitinkantis elementas"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Tiekėjo detalė neatitinka eilutės įrašo"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Eilutės įrašas jau užbaigtas"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Norint priimti eilutės įrašą, reikia daugiau informacijos"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Gauta pirkimo užsakymo eilutė"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Nepavyko priimti eilutės įrašo"
@@ -6972,7 +6972,7 @@ msgstr "Suteikia vietinį brūkšninių kodų palaikymą"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr "Išduoti atgaline data datuotus užsakymus"
msgid "Automatically issue orders that are backdated"
msgstr "Automatiškai išduoti užsakymus, kurių data yra atgalinė"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Lygiai"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Atsargų duomenys"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Įtraukti detalių atsargų duomenis"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Kainodaros duomenys"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Įtraukti detalių kainodaros duomenis"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Tiekėjų duomenys"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Įtraukti tiekėjų duomenis"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Gamintojų duomenys"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Įtraukti gamintojų duomenis"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Pakaitinių detalių duomenys"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Įtraukti pakaitinių detalių duomenis"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Parametrų duomenys"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Įtraukti detalių parametrų duomenis"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Daugiapakopis BOM eksportuotojas"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Suteikia galimybę eksportuoti daugiapakopius BOM"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "BOM lygis"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Pakaitalas {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Tiekėjas {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "Tiekėjo {n} SKU"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "Tiekėjo {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Gamintojas {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "Gamintojo {n} MPN"
@@ -7354,11 +7354,11 @@ msgstr "InvenTree automatinis etikečių spausdintuvas"
msgid "Provides support for printing using a machine"
msgstr "Suteikia palaikymą spausdinimui naudojant įrenginį"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "paskutinį kartą naudota"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Parinktys"
@@ -8072,7 +8072,7 @@ msgstr "Iš viso"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Serijos numeris"
@@ -8142,7 +8142,7 @@ msgstr "Paveikslėlio failas nerastas"
msgid "part_image tag requires a Part instance"
msgstr "Žyma part_image reikalauja detalės (Part) egzemplioriaus"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "Žyma company_image reikalauja įmonės (Company) egzemplioriaus"
@@ -8158,7 +8158,7 @@ msgstr "Filtruoti pagal aukščiausio lygio vietas"
msgid "Include sub-locations in filtered results"
msgstr "Įtraukti sub-vietas į filtravimo rezultatus"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Pirminė vieta"
@@ -8311,314 +8311,314 @@ msgstr "Atsargų vietos tipai"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Numatytoji piktograma visoms vietoms, kurioms nepaskirta piktograma (neprivaloma)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Atsargų vieta"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Atsargų vietos"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Savininkas"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Pasirinkite savininką"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Atsargos negali būti tiesiogiai patalpintos į struktūrines atsargų vietas, bet gali būti patalpinti į jų sub-vietas."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Išorinė"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Tai yra išorinė atsargų vieta"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Vietos tipas"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Šios vietos atsargų vietos tipas"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Negalite padaryti šios atsargų vietos struktūrine, nes joje jau yra atsargų!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Turi būti nurodyta detalė"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Atsargos negali būti patalpintos į struktūrines atsargų vietas!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Atsargų elementas negali būti sukurtas virtualioms detalėms"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Detalės tipas ('{self.supplier_part.part}') turi būti {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Elemento, turinčio serijos numerį, kiekis turi būti 1"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Serijos numeris negali būti nustatytas, jei kiekis didesnis nei 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Elementas negali priklausyti pats sau"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Elementas turi turėti surinkimo nuorodą, jei is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Surinkimo nuoroda nenurodo į tą pačią detalę"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Pirminis atsargų elementas"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Pagrindinė detalė"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Pasirinkite atitinkančią tiekėjo detalę šiam atsargų elementui"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Kur yra šis atsargų elementas?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Pakuotė, kurioje laikomas šis atsargų elementas"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Sumontuotas į"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Ar šis elementas yra sumontuotas kitame elemente?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Šio elemento serijos numeris"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Šio atsargų elemento partijos kodas"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Atsargų kiekis"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Surinkimo šaltinis"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Surinkimas šiam atsargų elementui"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Sunaudojo"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Gamybos užsakymas, kuris sunaudojo šį atsargų elementą"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Pirkimo užsakymo šaltinis"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Pirkimo užsakymas šiam atsargų elementui"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Pardavimo užsakymo paskirtis"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Atsargų elemento galiojimo data. Po šios datos atsargos bus laikomos pasibaigusiomis"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Ištrinti išnaudojus"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Ištrinti šį atsargų elementą, kai atsargos bus išnaudotos"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Vieneto pirkimo kaina pirkimo metu"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Konvertuota į detalę"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Detalė nenustatyta kaip sekama"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Kiekis turi būti sveikasis skaičius"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Kiekis negali viršyti galimų atsargų kiekio ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Serijos numeriai turi būti pateikti sąraše"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Kiekis nesutampa su serijos numeriais"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Bandomasis šablonas neegzistuoja"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Atsargų elementas buvo priskirtas pardavimo užsakymui"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Atsargų elementas sumontuotas kitame elemente"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Atsargų elementas turi kitų elementų"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Atsargų elementas buvo priskirtas klientui"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Atsargų elementas šiuo metu gaminamas"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Su serijos numeriais pažymėtų atsargų sujungti negalima"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Pasikartojantys atsargų elementai"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Atsargų elementai turi būti susiję su ta pačia detale"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Atsargų elementai turi būti susiję su ta pačia tiekėjo detale"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Atsargų būsenos kodai turi sutapti"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Atsargų elemento negalima perkelti, nes jo nėra sandėlyje"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Atsargų elemento sekimas"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Įrašo pastabos"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Atsargų elemento bandymo rezultatas"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Šiam bandymui turi būti pateikta reikšmė"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Šiam bandymui turi būti įkeltas priedas"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Netinkama reikšmė šiam bandymui"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Bandymo rezultatas"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Bandymo išvesties reikšmė"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Bandymo rezultato priedas"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Bandymo pastabos"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Bandymų stotis"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "Bandymų stoties identifikatorius, kurioje atliktas bandymas"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Pradėta"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Bandymo pradžios laiko žyma"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Pabaigta"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Bandymo pabaigos laiko žyma"
@@ -8662,43 +8662,43 @@ msgstr "Pasirinkite detalę serijos numeriui sugeneruoti"
msgid "Quantity of serial numbers to generate"
msgstr "Kiekis serijos numerių, kuriuos reikia sugeneruoti"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Bandymo šablonas šiam rezultatui"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "Turi būti pateiktas šablono ID arba bandymo pavadinimas"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "Bandymo pabaigos laikas negali būti ankstesnis nei pradžios laikas"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Pirminis elementas"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Pirminis atsargų elementas"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Naudoti pakuotės dydį pridedant: nurodytas kiekis yra pakuočių skaičius"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Įveskite serijos numerius naujiems elementams"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Tiekėjo detalės numeris"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Kiekis negali viršyti galimų atsargų kiekio ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Paskirties atsargų vieta"
@@ -8805,103 +8805,103 @@ msgstr "Pasirinkite atsargų elementus būsenai pakeisti"
msgid "No stock items selected"
msgstr "Nepasirinkti jokie atsargų elementai"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sub-vietos"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Pirminė atsargų vieta"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Detalė turi būti parduodama"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Elementas priskirtas pardavimo užsakymui"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Elementas priskirtas gamybos užsakymui"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Klientas, kuriam priskiriami atsargų elementai"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Pasirinkta įmonė nėra klientas"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Atsargų priskyrimo pastabos"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Turi būti pateiktas atsargų elementų sąrašas"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Atsargų sujungimo pastabos"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Leisti skirtingus tiekėjus"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Leisti sujungti atsargų elementus su skirtingomis tiekėjų detalėmis"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Leisti skirtingas būsenas"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Leisti sujungti atsargų elementus su skirtingais būsenos kodais"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Turi būti pateikti bent du atsargų elementai"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Be pakeitimų"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Atsargų elemento pirminio rakto reikšmė"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Atsargų elemento nėra sandėlyje"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Atsargų operacijos pastabos"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Kitas serijos numeris"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Ankstesnis serijos numeris"
@@ -9383,83 +9383,83 @@ msgstr "Pardavimo užsakymai"
msgid "Return Orders"
msgstr "Grąžinimo užsakymai"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Vartotojo vardas"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Vardas"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Vartotojo vardas"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Pavardė"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Vartotojo pavardė"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Vartotojo el. pašto adresas"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personalas"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Ar šis vartotojas turi personalo leidimus"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Supervartotojas"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Ar šis vartotojas yra supervartotojas"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Ar ši vartotojo paskyra yra aktyvi"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Tik supervartotojas gali keisti šį lauką"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "Neturite leidimo kurti vartotojų"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Jūsų paskyra sukurta."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Prisijungimui naudokite slaptažodžio atstatymo funkciją"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Sveiki atvykę į InvenTree"
diff --git a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po
index db87f23b88..965b2ceaeb 100644
--- a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Latvian\n"
"Language: lv_LV\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API galapunkts nav atrasts"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Lietotājam nav atļaujas, lai apskatītu šo modeli"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Nevarēja konvertēt {original} par {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Norādītais daudzums nav derīgs"
@@ -112,13 +112,13 @@ msgstr "Ievadiet datumu"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Piezīmes"
@@ -171,35 +171,35 @@ msgstr "Noņemiet HTML tagus no šīs vērtības"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Savienojuma kļūda"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Serveris atbildēja ar nederīgu statusa kodu"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Radās izņēmums"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Serveris atbildēja ar nederīgu Content-Length vērtību"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Attēla izmērs ir pārāk liels"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Attēla lejupielāde pārsniedz maksimālo izmēru"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Attālais serveris atgrieza tukšu atbildi"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Norādītajā URL nav derīgs attēla fails"
@@ -207,11 +207,11 @@ msgstr "Norādītajā URL nav derīgs attēla fails"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr ""
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr ""
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr ""
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr ""
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po
index 9ec3041053..49e686a997 100644
--- a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:37\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API eindpunt niet gevonden"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Lijst met items of filters moet worden opgegeven voor bulk bewerking"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Items moeten worden opgegeven als een lijst"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Ongeldige items lijst verstrekt"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Filters moeten als woordenboek worden opgegeven"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Ongeldige filters opgegeven"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Alles filteren alleen gebruiken met True"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Geen items die overeenkomen met de opgegeven criteria"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Geen gegevens verstrekt"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
-msgstr ""
+msgstr "Dit veld moet uniek zijn"
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Gebruiker heeft geen rechten om dit model te bekijken"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "{original} kon niet worden omgezet naar {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Ongeldige hoeveelheid ingevoerd"
@@ -112,13 +112,13 @@ msgstr "Voer datum in"
msgid "Invalid decimal value"
msgstr "Ongeldige decimale waarde"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Opmerkingen"
@@ -171,35 +171,35 @@ msgstr "Verwijder HTML tags van deze waarde"
msgid "Data contains prohibited markdown content"
msgstr "Gegevens bevatten verboden markdown inhoud"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Verbindingsfout"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Server reageerde met ongeldige statuscode"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Uitzondering opgetreden"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Server reageerde met ongeldige Content-Length waarde"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Afbeeldingsformaat is te groot"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Beelddownload overschrijdt de maximale grootte"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Externe server heeft lege reactie teruggegeven"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Opgegeven URL is geen geldig afbeeldingsbestand"
@@ -207,11 +207,11 @@ msgstr "Opgegeven URL is geen geldig afbeeldingsbestand"
msgid "Log in to the app"
msgstr "Log in op de app"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Schakel tweestapsverificatie in voordat je iets anders kunt doen."
@@ -255,135 +255,135 @@ msgstr "Referentie moet overeenkomen met verplicht patroon"
msgid "Reference number is too large"
msgstr "Referentienummer is te groot"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Ongeldige keuze"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Naam"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Omschrijving"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Omschrijving (optioneel)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Pad"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Dubbele namen kunnen niet bestaan onder hetzelfde bovenliggende object"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown notitie (optioneel)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Streepjescode gegevens"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Streepjescode van derden"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash van Streepjescode"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Unieke hash van barcode gegevens"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Bestaande barcode gevonden"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Taak mislukt"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Achtergrondtaak '{f}' is mislukt na {n} pogingen"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serverfout"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Er is een fout gelogd door de server."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Afbeelding"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Moet een geldig nummer zijn"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Selecteer valuta uit beschikbare opties"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Dit veld mag niet nul zijn."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Ongeldige waarde"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Externe afbeelding"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL van extern afbeeldingsbestand"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Afbeeldingen van externe URL downloaden is niet ingeschakeld"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Fout bij het downloaden van afbeelding van externe URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "Ongeldig inhoudstype"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "Inhoudstype niet gevonden"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "Content type komt niet overeen met de vereiste mixin klasse"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -553,8 +553,8 @@ msgstr "Ongeldige fysieke eenheid"
msgid "Not a valid currency code"
msgstr "Geen geldige valutacode"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Status van bestelling"
@@ -562,21 +562,21 @@ msgstr "Status van bestelling"
msgid "Parent Build"
msgstr "Bovenliggende Productie"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Inclusief varianten"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Inclusief varianten"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Inclusief varianten"
msgid "Part"
msgstr "Onderdeel"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Categorie"
@@ -666,80 +666,80 @@ msgstr "Max. datum"
msgid "Exclude Tree"
msgstr "Boomstructuur uitsluiten"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Productie moet geannuleerd worden voordat het kan worden verwijderd"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Verbruiksartikelen"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Optioneel"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Samenstelling"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Gevolgd"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testbaar"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Openstaande order"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Toegewezen"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Verbruikt"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Beschikbaar"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "In bestelling"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Productieorder"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Locatie"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Uitvoer"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "Filter op uitvoer standaard item ID. Gebruik 'null' om niet geïnstalleerde build items te vinden."
@@ -779,9 +779,9 @@ msgstr "Doeldatum moet na startdatum zijn"
msgid "Build Order Reference"
msgstr "Productieorderreferentie"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Verkooporder Referentie"
msgid "SalesOrder to which this build is allocated"
msgstr "Verkooporder waar deze productie aan is toegewezen"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Bronlocatie"
@@ -857,17 +857,17 @@ msgstr "Productiestatus"
msgid "Build status code"
msgstr "Productiestatuscode"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Batchcode"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Batchcode voor deze productieuitvoer"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Aanmaakdatum"
@@ -887,7 +887,7 @@ msgstr "Verwachte opleveringsdatum"
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:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Opleveringsdatum"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Gebruiker die de productieorder heeft gegeven"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Verantwoordelijke"
@@ -913,12 +913,12 @@ msgstr "Verantwoordelijke"
msgid "User or group responsible for this build order"
msgstr "Gebruiker of groep verantwoordelijk voor deze bouwopdracht"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Externe Link"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link naar externe URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Prioriteit van deze bouwopdracht"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Project code"
@@ -960,7 +960,7 @@ msgstr "Productieorder {build} is voltooid"
msgid "A build order has been completed"
msgstr "Een productieorder is voltooid"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Serienummers moeten worden opgegeven voor traceerbare onderdelen"
@@ -976,43 +976,43 @@ 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:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Hoeveelheid moet groter zijn dan nul"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Hoeveelheid kan niet groter zijn dan aantal"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "Build output heeft niet alle vereiste tests doorstaan"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Build output {serial} heeft niet alle vereiste tests doorstaan"
#: build/models.py:1230
msgid "Cannot partially complete a build output with allocated items"
-msgstr ""
+msgstr "Kan een build uitvoer niet gedeeltelijk voltooien met de toegewezen items"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Bouw order regel item"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Bouw object"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Bouw object"
msgid "Quantity"
msgstr "Hoeveelheid"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Vereiste hoeveelheid voor bouwopdracht"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Aantal van verbruikte voorraad"
-#: build/models.py:1773
+#: build/models.py:1771
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:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Geselecteerde voorraadartikelen komen niet overeen met de BOM-regel"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr "Toegewezen hoeveelheid moet groter zijn dan nul"
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad"
+
+#: build/models.py:1869
#, 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:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Voorraad item is te veel toegewezen"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Toewijzing hoeveelheid moet groter zijn dan nul"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Geselecteerde voorraadartikelen komen niet overeen met de BOM-regel"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Toegewezen hoeveelheid overschrijdt de beschikbare voorraad hoeveelheid"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Voorraadartikel"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Bron voorraadartikel"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Voorraad hoeveelheid toe te wijzen aan productie"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Installeren in"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Bestemming voorraadartikel"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Bouw level"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Onderdeel naam"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Projectcode label"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Productieuitvoer"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Productieuitvoer komt niet overeen met de bovenliggende productie"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Uitvoeronderdeel komt niet overeen met productieorderonderdeel"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Deze productieuitvoer is al voltooid"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Deze productieuitvoer is niet volledig toegewezen"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Voer hoeveelheid in voor productie uitvoer"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Hoeveelheid als geheel getal vereist voor traceerbare onderdelen"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Serienummers"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Voer serienummers in voor productieuitvoeren"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Voorraad locatie voor project uitvoer"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Serienummers automatisch toewijzen"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Vereiste artikelen automatisch toewijzen met overeenkomende serienummers"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "De volgende serienummers bestaan al of zijn ongeldig"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Een lijst van productieuitvoeren moet worden verstrekt"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Voorraadlocatie voor geannuleerde outputs"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Toewijzingen weggooien"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Verwijder alle voorraadtoewijzingen voor geannuleerde outputs"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Reden voor annulering van bouworder(s)"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Locatie van voltooide productieuitvoeren"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Incomplete Toewijzing Accepteren"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Voltooi de uitvoer als de voorraad niet volledig is toegewezen"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Toegewezen voorraad gebruiken"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Verbruik elke voorraad die al is toegewezen aan deze build"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Verwijder Incomplete Uitvoeren"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Verwijder alle productieuitvoeren die niet zijn voltooid"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Niet toegestaan"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Accepteer zoals geconsumeerd onder deze bouwopdracht"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "De-alloceren voordat deze bouwopdracht voltooid wordt"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Overgealloceerde voorraad"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Hoe wilt u omgaan met extra voorraaditems toegewezen aan de bouworder"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Sommige voorraadartikelen zijn overalloceerd"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Accepteer Niet-toegewezen"
-#: build/serializers.py:795
+#: build/serializers.py:777
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:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Vereiste voorraad is niet volledig toegewezen"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Accepteer Onvolledig"
-#: build/serializers.py:813
+#: build/serializers.py:795
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:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Vereiste productiehoeveelheid is voltooid"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Bouw opdracht heeft open sub bouw orders"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Bouwen moet in de productiestatus staan"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Productieorder heeft onvolledige uitvoeren"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Productielijn"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Productieuitvoer"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Productieuitvoer moet naar dezelfde productie wijzen"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Bouw lijn-item"
-#: build/serializers.py:946
+#: build/serializers.py:928
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:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Artikel moet op voorraad zijn"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Beschikbare hoeveelheid ({q}) overschreden"
-#: build/serializers.py:1011
+#: build/serializers.py:993
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:1019
+#: build/serializers.py:1001
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:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Allocaties voor artikelen moeten worden opgegeven"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
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:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Locatie uitsluiten"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Voorraadartikelen van deze geselecteerde locatie uitsluiten"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Uitwisselbare voorraad"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Voorraadartikelen op meerdere locaties kunnen uitwisselbaar worden gebruikt"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Vervangende Voorraad"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Toewijzing van vervangende onderdelen toestaan"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Optionele Items"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Alloceer optionele BOM items om bestelling te bouwen"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Starten van automatische toewijzing taak mislukt"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "BOM referentie"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "BOM onderdeel ID"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "BOM onderdeel naam"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Bouwen"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Leveranciersonderdeel"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Toegewezen hoeveelheid"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Bouw referentie"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Naam categorie onderdeel"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Volgbaar"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Overgenomen"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Varianten toestaan"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Stuklijstartikel"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "In productie"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Gepland om te bouwen"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Externe voorraad"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Beschikbare Voorraad"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Beschikbare vervanging voorraad"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Beschikbare varianten voorraad"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "Verbruikte hoeveelheid overschrijdt toegewezen hoeveelheid"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Optionele notities voor voorraadverbruik"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "Het bouwelement moet verwijzen naar de juiste bouwopdracht"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Dupliceer build item allocatie"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "Build line moet verwijzen naar de juiste bouwopdracht"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Dupliceer build line toewijzing"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Ten minste één item of regel moet worden opgegeven"
@@ -1498,19 +1490,19 @@ msgstr "Achterstallige Productieorder"
msgid "Build order {bo} is now overdue"
msgstr "Productieorder {bo} is nu achterstallig"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Is koppeling"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Is een bestand"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Gebruiker heeft geen toestemming om deze bijlagen te verwijderen"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Gebruiker heeft geen toestemming om deze bijlage te verwijderen."
@@ -1530,7 +1522,11 @@ msgstr "Geen geldige valuta codes opgegeven"
msgid "No plugin"
msgstr "Geen plug-in gevonden"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Projectcode label"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Bijgewerkt"
@@ -1558,7 +1554,7 @@ msgstr "Projectbeschrijving"
msgid "User or group responsible for this project"
msgstr "Gebruiker of groep die verantwoordelijk is voor dit project"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Instellingen"
@@ -1590,550 +1586,550 @@ msgstr "Waarde is niet geldig voor validatiecontrole"
msgid "Key string must be unique"
msgstr "Sleutelreeks moet uniek zijn"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Gebruiker"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Prijs pauze hoeveelheid"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Prijs"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Stukprijs op opgegeven hoeveelheid"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Eindpunt"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Eindpunt waarop deze webhook wordt ontvangen"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Naam van deze webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Actief"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Is deze webhook actief"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Sleutel"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token voor toegang"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Geheim"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Gedeeld geheim voor HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Bericht ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Unieke identificatie voor dit bericht"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Host"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Host waarvan dit bericht is ontvangen"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Koptekst"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Koptekst van dit bericht"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Berichtinhoud"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Inhoud van dit bericht"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Eindpunt waarop dit bericht is ontvangen"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Aan gewerkt"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Is het werk aan dit bericht voltooid?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Titel"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Koppeling"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Gepubliceerd"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Auteur"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Samenvatting"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Gelezen"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Is dit nieuwsitem gelezen?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Afbeelding"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Doel type voor deze afbeelding"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "Doel modelnummer voor deze afbeelding"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Aangepaste eenheid"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Eenheid symbool moet uniek zijn"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Naam van de unit moet een geldig id zijn"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Naam van eenheid"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbool"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Optionele eenheid symbool"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definitie"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definitie van eenheid"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Bijlage"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Ontbrekend bestand"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Externe link ontbreekt"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Model type"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Doel type voor afbeelding"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Bestand als bijlage selecteren"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Opmerking"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Opmerking van bijlage"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Uploaddatum"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Datum waarop het bestand is geüpload"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Bestandsgrootte"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Bestandsgrootte in bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Ongeldig modeltype opgegeven voor bijlage"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Aangepaste staat"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Aangepaste statussen"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Referentie status set"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Status set die met deze aangepaste status wordt uitgebreid"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Logische sleutel"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Staat logische sleutel die gelijk is aan deze staat in zakelijke logica"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Waarde"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "De numerieke waarde die wordt opgeslagen in de modellendatabase"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Naam van de toestand"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Label"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Label dat in de frontend getoond wordt"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Kleur"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Kleur die in de frontend getoond wordt"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Model met deze staat is gekoppeld aan"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Het model moet worden gekozen"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Sleutel moet worden geselecteerd"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Logische sleutel moet worden geselecteerd"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Sleutel moet anders zijn dan logische sleutel"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Geldige referentie status klasse moet worden opgegeven"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Sleutel moet verschillen van de logische sleutels van de referentie status"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "Logische sleutel moet in de logische sleutels van de referentiestatus staan"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Naam moet anders zijn dan de namen van de referentie status"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Keuzelijst"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Selectielijst"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Naam van de selectielijst"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Beschrijving van de selectielijst"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Vergrendeld"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Is deze selectielijst vergrendeld?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Kan deze selectielijst worden gebruikt?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Bron plug-in"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Plug-in die de selectielijst biedt"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Bron tekenreeks"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Optionele tekenreeks die de bron identificeert die voor deze lijst wordt gebruikt"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Standaard vermelding"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Standaard vermelding voor deze selectielijst"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Gecreëerd"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Datum en tijd waarop de selectielijst is aangemaakt"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Laatst bijgewerkt"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Datum en tijd waarop de selectielijst voor het laatst is bijgewerkt"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Selectielijst item"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Selectielijst item"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Selectielijst waaraan dit item hoort"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Naam van de selectielijst"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Label voor het item in de selectielijst"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Beschrijving van het item in de selectielijst"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Is dit item in deze lijst actief?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Parameter sjabloon"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "Parameter sjablonen"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Checkbox parameters kunnen geen eenheden bevatten"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Checkbox parameters kunnen geen eenheden bevatten"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Keuzes moeten uniek zijn"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "De template van de parameter moet uniek zijn"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "Doelmodeltype voor dit parametersjabloon"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Parameternaam"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Eenheden"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Fysieke eenheden voor deze parameter"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Parameter omschrijving"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Selectievakje"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Is deze parameter een selectievak?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Keuzes"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Geldige keuzes voor deze parameter (komma gescheiden)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Lijst met selecties voor deze parameter"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Ingeschakeld"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "Is dit parametersjabloon ingeschakeld?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "Parameter"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "Parameters"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Ongeldige keuze voor parameter waarde"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "Ongeldig modeltype opgegeven voor parameter"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "Model-ID"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "ID van het doelmodel voor deze parameter"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Sjabloon"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "Parameter sjabloon"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Gegevens"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Parameterwaarde"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Parameterwaarde"
msgid "Note"
msgstr "Opmerking"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Optioneel notities veld"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Barcode Scan"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Barcode gegevens"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Gebruiker die de barcode gescand heeft"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Tijdstempel"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Datum en tijd van de streepjescode scan"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Adres eindpunt dat de streepjescode verwerkt"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Inhoud"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Contextgegevens voor de barcode scan"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Reactie"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Reactiegegevens van de barcode scan"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultaat"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Was de barcode succesvol gescand?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Er is een fout opgetreden"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: E-maillog verwijderen wordt beschermd. Zet INVENTREE_PROTECT_EMAIL_LOG naar False om verwijdering toe te staan."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "E-mailbericht"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "E-mail berichten"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Aangekondigd"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Verzonden"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Mislukt"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Geleverd"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Bevestigd"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Inkomend"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Uitgaand"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Geen antwoord"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Track levering"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Track gelezen"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Track Klik"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "Globaal ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Identificatie voor dit bericht (kan worden geleverd door een extern systeem)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "Discussie ID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Identificatie voor deze bericht draad (kan worden geleverd door een extern systeem)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Gesprek"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Gekoppeld onderwerp voor dit bericht"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
-msgstr ""
+msgstr "Prioriteit"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "E-mail gesprekken"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "E-mail gesprekken"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Sleutel"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Unieke sleutel voor deze thread (gebruikt om de conversatie te identificeren)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Unieke identificatie voor dit bericht"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Intern gestart"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Is dit onderwerp intern gestart?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Datum en tijd waarop de conversatie voor het laatst is bijgewerkt"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Datum en tijd waarop de conversatie voor het laatst is bijgewerkt"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} is geannuleerd"
msgid "A order that is assigned to you was canceled"
msgstr "Een bestelling die aan u is toegewezen is geannuleerd"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Ontvangen items"
@@ -2351,93 +2347,101 @@ msgstr "Artikelen zijn ontvangen tegen een inkooporder"
msgid "Items have been received against a return order"
msgstr "Items zijn ontvangen tegen een retour bestelling"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Geeft aan of de instelling overschreven wordt door een omgevingsvariabele"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Overschrijven"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Is actief"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Openstaande taken"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Geplande taken"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Mislukte taken"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Taak ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Unieke taak ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Vergrendel"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Tijdstip van vergrendeling"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Naam van de taak"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Functie"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Functie naam"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumenten"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Taak argumenten"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Trefwoord argumenten"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Taak trefwoord argumenten"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Bestandsnaam"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Model type"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Gebruiker heeft geen toestemming om bijlagen voor dit model te maken of te bewerken"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "Gebruiker heeft geen toestemming om parameters voor dit model te maken of te bewerken"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lijst met selecties is vergrendeld"
@@ -2445,1130 +2449,1134 @@ msgstr "Lijst met selecties is vergrendeld"
msgid "No group"
msgstr "Geen groep"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Website URL is vergrendeld door configuratie"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Opnieuw opstarten vereist"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Een instelling is gewijzigd waarvoor een herstart van de server vereist is"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migraties in behandeling"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Aantal nog openstaande database migraties"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Actieve waarschuwingscodes"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Een reeks actieve waarschuwingscodes"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "Instantie Id"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Unieke identificatie voor deze InvenTree instantie"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Aankondiging ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Kondig de instantie ID van de server aan in de server status info (ongeautoriseerd)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "ID Serverinstantie"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Stringbeschrijving voor de server instantie"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Gebruik de instantie naam"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Gebruik de naam van de instantie in de titelbalk"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Tonen `over` beperken"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Toon de `over` modal alleen aan superusers"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Bedrijfsnaam"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Interne bedrijfsnaam"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Basis-URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Basis URL voor serverinstantie"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Standaard Valuta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Selecteer basisvaluta voor de berekening van prijzen"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Ondersteunde valuta"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Lijst van ondersteunde valuta codes"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Valuta update interval"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Hoe vaak te controleren op updates (nul om uit te schakelen)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dagen"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Valuta update plug-in"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Munteenheid update plug-in om te gebruiken"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Download van URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Download van afbeeldingen en bestanden vanaf een externe URL toestaan"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Download limiet"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maximale downloadgrootte voor externe afbeelding"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-agent gebruikt om te downloaden van URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Sta toe om de user-agent te overschrijven die gebruikt wordt om afbeeldingen en bestanden van externe URL te downloaden (laat leeg voor de standaard)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Strikte URL validatie"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Vereis schema specificatie bij het valideren van URLs"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Interval voor update"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Hoe vaak te controleren op updates (nul om uit te schakelen)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatische backup"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Automatische back-up van database- en mediabestanden inschakelen"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Automatische backup interval"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Geef het aantal dagen op tussen geautomatiseerde backup"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Interval Taak Verwijderen"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Resultaten van achtergrondtaken worden verwijderd na het opgegeven aantal dagen"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Error Log Verwijderings Interval"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Resultaten van achtergrondtaken worden verwijderd na het opgegeven aantal dagen"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Interval Verwijderen Notificatie"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Meldingen van gebruikers worden verwijderd na het opgegeven aantal dagen"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "E-mail verwijderen interval"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "E-mailberichten zullen worden verwijderd na het opgegeven aantal dagen"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Bescherm e-maillogboeken"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Voorkom het verwijderen van e-mail logs"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Streepjescodeondersteuning"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Schakel barcodescanner ondersteuning in in de webinterface"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Sla de resultaten van de barcode op"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Sla de barcode scan resultaten op in de database"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Maximale aantal Barcode Scans"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Maximum aantal resultaten van de barcode scan op te slaan"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Barcode Invoer Vertraging"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Barcode invoerverwerking vertraging"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Barcode Webcam Ondersteuning"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Barcode via webcam scannen in browser toestaan"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Barcode gegevens"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Geef barcode gegevens weer in browser als tekst"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Streepjescode Plug-in"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Plug-in om te gebruiken voor interne barcode data genereren"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Herzieningen onderdeel"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Revisieveld voor onderdeel inschakelen"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Alleen assemblee revisie"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Alleen revisies toestaan voor assemblageonderdelen"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Verwijderen uit Assemblage toestaan"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Verwijderen van onderdelen die in een groep worden gebruikt toestaan"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN Regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Regulier expressiepatroon voor het overeenkomende Onderdeel IPN"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Duplicaat IPN toestaan"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Toestaan dat meerdere onderdelen dezelfde IPN gebruiken"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Bewerken IPN toestaan"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Sta het wijzigen van de IPN toe tijdens het bewerken van een onderdeel"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Kopieer Onderdeel Stuklijstgegevens"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Kopieer standaard stuklijstgegevens bij het dupliceren van een onderdeel"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Kopieer Onderdeel Parametergegevens"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Parametergegevens standaard kopiëren bij het dupliceren van een onderdeel"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Kopieer Onderdeel Testdata"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Testdata standaard kopiëren bij het dupliceren van een onderdeel"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kopiëer Categorieparameter Sjablonen"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Onderdelen zijn standaard sjablonen"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Onderdeel"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Koopbaar"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Onderdelen kunnen standaard gekocht worden"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Verkoopbaar"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Onderdelen kunnen standaard verkocht worden"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Onderdelen kunnen standaard gevolgd worden"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtueel"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Onderdelen zijn standaard virtueel"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Verwante onderdelen tonen"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Verwante onderdelen voor een onderdeel tonen"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Initiële voorraadgegevens"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Aanmaken van eerste voorraad toestaan bij het toevoegen van een nieuw onderdeel"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Initiële leveranciergegevens"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Aanmaken van eerste leveranciersgegevens toestaan bij het toevoegen van een nieuw onderdeel"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Onderdelennaam Weergaveopmaak"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Opmaak om de onderdeelnaam weer te geven"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Standaardicoon voor onderdeel catagorie"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Standaardicoon voor onderdeel catagorie (leeg betekent geen pictogram)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Minimaal aantal prijs decimalen"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Minimaal aantal decimalen om weer te geven bij het weergeven van prijsgegevens"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Maximum prijs decimalen"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Maximum aantal decimalen om weer te geven bij het weergeven van prijsgegevens"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Gebruik leveranciersprijzen"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Prijsvoordelen leveranciers opnemen in de totale prijsberekening"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Aankoopgeschiedenis overschrijven"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Historische order prijzen overschrijven de prijzen van de leverancier"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Gebruik voorraaditem prijzen"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Gebruik prijzen van handmatig ingevoerde voorraadgegevens voor prijsberekeningen"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Voorraad artikelprijs leeftijd"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Voorraaditems ouder dan dit aantal dagen uitsluiten van prijsberekeningen"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Gebruik variantprijzen"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Variantenprijzen opnemen in de totale prijsberekening"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Alleen actieve varianten"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Gebruik alleen actieve variantonderdelen voor het berekenen van variantprijzen"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Prijzen automatisch bijwerken"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Automatisch prijzen van onderdelen bijwerken wanneer interne gegevens veranderen"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Prijzen Herbouw interval"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Aantal dagen voordat de prijzen voor onderdelen automatisch worden bijgewerkt"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Interne Prijzen"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Inschakelen van interne prijzen voor onderdelen"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Interne prijs overschrijven"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Indien beschikbaar, interne prijzen overschrijven berekeningen van prijsbereik"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Printen van labels Inschakelen"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Printen van labels via de webinterface inschakelen"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Label Afbeelding DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
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/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Activeer Rapportages"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Activeer het genereren van rapporten"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Foutopsporingsmodus"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Rapporten genereren in debug modus (HTML uitvoer)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Log fouten"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Registreer fouten die optreden bij het genereren van rapporten"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Paginagrootte"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Standaard paginagrootte voor PDF rapporten"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Forceer Parameter Eenheden"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Als er eenheden worden opgegeven, moeten parameterwaarden overeenkomen met de opgegeven eenheden"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Globaal unieke serienummers"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Serienummers voor voorraaditems moeten globaal uniek zijn"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Verwijder uitgeputte voorraad"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Bepaalt standaard gedrag wanneer een voorraadartikel leeg is"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Batchcode Sjabloon"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Sjabloon voor het genereren van standaard batchcodes voor voorraadartikelen"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Verlopen Voorraad"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Verlopen voorraad functionaliteit inschakelen"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Verkoop Verlopen Voorraad"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Verkoop verlopen voorraad toestaan"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Voorraad Vervaltijd"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Aantal dagen voordat voorraadartikelen als verouderd worden beschouwd voor ze verlopen"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Produceer Verlopen Voorraad"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Sta productie met verlopen voorraad toe"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Voorraad Eigenaar Toezicht"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Eigenaarstoezicht over voorraadlocaties en items inschakelen"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Voorraadlocatie standaard icoon"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Standaard locatie pictogram (leeg betekent geen icoon)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Geïnstalleerde voorraad items weergeven"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Geïnstalleerde voorraadartikelen in voorraadtabellen tonen"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Controleer BOM bij het installeren van items"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Geïnstalleerde voorraad items moeten in de BOM voor het bovenliggende deel bestaan"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Sta 'Niet op voorraad overschrijving' toe"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Toestaan dat voorraadartikelen die niet op voorraad zijn worden overgebracht tussen voorraadlocaties"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Productieorderreferentiepatroon"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Vereist patroon voor het genereren van het Bouworderreferentieveld"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Vereis verantwoordelijke eigenaar"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Een verantwoordelijke eigenaar moet worden toegewezen aan elke bestelling"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Vereist een actief onderdeel"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Voorkom het maken van orders voor inactieve onderdelen"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Vergrendeld onderdeel vereisen"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Voorkom het maken van orders voor ontgrendelde onderdelen"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Vereist een geldige BOM"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Voorkom het creëren van bouworders tenzij BOM is gevalideerd"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Onderliggende bestellingen vereist"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Voorkom voltooiing van de bouw tot alle sub orders gesloten zijn"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Externe Bouw Orders"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Inschakelen externe build order functionaliteit"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blokkeren tot test geslaagd"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Voorkom dat de bouw van de uitvoer wordt voltooid totdat alle vereiste testen zijn geslaagd"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Retourorders inschakelen"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Retourorder functionaliteit inschakelen in de gebruikersinterface"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Retourorder referentie patroon"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Verplicht patroon voor het genereren van Retourorder referentie veld"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Bewerk voltooide retourorders"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Bewerken van retourorders toestaan nadat deze zijn voltooid"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Verkooporderreferentiepatroon"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Vereist patroon voor het genereren van het Verkooporderreferentieveld"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Standaard Verzending Verkooporder"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Aanmaken standaard verzending bij verkooporders inschakelen"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Bewerk voltooide verkooporders"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Bewerken van verkooporders toestaan nadat deze zijn verzonden of voltooid"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
-msgstr ""
+msgstr "Zending moet gecontroleerd worden"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
-msgstr ""
+msgstr "Voorkom voltooiing van verzendingen totdat items zijn gecontroleerd"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Verstuurde bestellingen markeren als voltooid"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Verkooporders gemarkeerd als verzonden zullen automatisch worden voltooid, zonder de status \"verzonden\""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Inkooporderreferentiepatroon"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Vereist patroon voor het genereren van het Inkooporderreferentieveld"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Bewerk voltooide verkooporders"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Bewerken van inkooporders toestaan nadat deze zijn verzonden of voltooid"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Valuta converteren"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Verander artikelwaarde naar basisvaluta bij het ontvangen van voorraad"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Inkooporders automatisch voltooien"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Markeer orders automatisch als voltooid wanneer alle regelitems worden ontvangen"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Wachtwoord vergeten functie inschakelen"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Wachtwoord vergeten functie inschakelen op de inlogpagina's"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Registratie inschakelen"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Zelfregistratie voor gebruikers op de inlogpagina's inschakelen"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "SSO inschakelen"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "SSO inschakelen op de inlogpagina's"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Schakel gebruikersregistratie met SSO in"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Zelfregistratie voor gebruikers middels SSO op de inlogpagina's inschakelen"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "SSO-groep synchroniseren inschakelen"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Inschakelen van het synchroniseren van InvenTree groepen met groepen geboden door de IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSO groep sleutel"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "De naam van de groepen claim attribuut van de IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "SSO groep kaart"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Een mapping van SSO-groepen naar lokale InvenTree groepen. Als de lokale groep niet bestaat, zal deze worden aangemaakt."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Verwijder groepen buiten SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Of groepen die zijn toegewezen aan de gebruiker moeten worden verwijderd als ze geen backend zijn door de IdP. Het uitschakelen van deze instelling kan beveiligingsproblemen veroorzaken"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "E-mailadres verplicht"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Vereis gebruiker om e-mailadres te registreren bij aanmelding"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "SSO-gebruikers automatisch invullen"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Gebruikersdetails van SSO-accountgegevens automatisch invullen"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "E-mail twee keer"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Bij inschrijving gebruikers twee keer om hun e-mail vragen"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Wachtwoord tweemaal"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Laat gebruikers twee keer om hun wachtwoord vragen tijdens het aanmelden"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Toegestane domeinen"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Inschrijven beperken tot bepaalde domeinen (komma-gescheiden, beginnend met @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Groep bij aanmelding"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Groep waaraan nieuwe gebruikers zijn toegewezen op registratie. Als SSO-groepssynchronisatie is ingeschakeld, is deze groep alleen ingesteld als er geen groep vanuit de IdP kan worden toegewezen."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "MFA afdwingen"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Gebruikers moeten multifactor-beveiliging gebruiken."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Controleer plugins bij het opstarten"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Controleer of alle plug-ins zijn geïnstalleerd bij het opstarten - inschakelen in container-omgevingen"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Controleren op plug-in updates"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Schakel periodieke controles voor updates voor geïnstalleerde plug-ins in"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Activeer URL-integratie"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Plugins toestaan om URL-routes toe te voegen"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Activeer navigatie integratie"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Plugins toestaan om te integreren in navigatie"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Activeer app integratie"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Activeer plug-ins om apps toe te voegen"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Activeer planning integratie"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Activeer plugin om periodiek taken uit te voeren"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Activeer evenement integratie"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Activeer plugin om op interne evenementen te reageren"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Interface integratie activeren"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Plug-ins inschakelen om te integreren in de gebruikersinterface"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "E-mail integratie inschakelen"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Schakel plug-ins in om uitgaande / inkomende mails te verwerken"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Activeer project codes"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Schakel projectcodes in voor het bijhouden van projecten"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Voorraad geschiedenis inschakelen"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Functionaliteit voor het opnemen van historische voorraadniveaus en -waarde inschakelen"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Externe locaties uitsluiten"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Voorraaditems op externe locaties uitsluiten van aandelen geschiedenis berekeningen"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Automatische Voorraadcontrole Periode"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Aantal dagen tussen het opnemen van automatische voorraadgeschiedenis"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Verwijder oude items geschiedenis"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Verwijder voorraadgeschiedenis items ouder dan het opgegeven aantal dagen"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Aandelengeschiedenis verwijderings interval"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Voorraadrapportage zal worden verwijderd na het opgegeven aantal dagen"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Gebruikers volledige namen weergeven"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Laat gebruikers volledige namen zien in plaats van gebruikersnamen"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Gebruikersprofielen tonen"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Toon gebruikersprofielen op hun profielpagina"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Inschakelen van teststation data"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Schakel teststation gegevensverzameling in voor testresultaten"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
-msgstr ""
+msgstr "Machine Ping inschakelen"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
-msgstr ""
+msgstr "Schakel periodieke ping taak van geregistreerde machines in om hun status te controleren"
#: common/setting/user.py:23
msgid "Inline label display"
@@ -3596,11 +3604,11 @@ msgstr "PDF-rapporten in de browser weergeven, in plaats van als bestand te down
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "Barcode Scanner in formuliervelden"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "Barcodescanner invoer in formuliervelden toestaan"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3868,7 +3876,7 @@ msgstr "Sla de laatst gebruikte printer op voor een gebruiker"
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "Alle modellen"
#: common/validators.py:63
msgid "No attachment model type provided"
@@ -3911,29 +3919,29 @@ msgstr "Onderdeel is actief"
msgid "Manufacturer is Active"
msgstr "Fabrikant is actief"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Leveranciersonderdelen is actief"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Intern onderdeel is actief"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Leverancier is actief"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Fabrikant"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Bedrijf"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Heeft voorraad"
@@ -3969,7 +3977,7 @@ msgstr "Telefoonnummer voor contact"
msgid "Contact email address"
msgstr "Contact e-mailadres"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contact"
@@ -4022,255 +4030,247 @@ msgstr "Btw-nr"
msgid "Company Tax ID"
msgstr "BTW-nummer van bedrijf"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adres"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adres"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Selecteer bedrijf"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Adres titel"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Titel die het adres beschrijft"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Primair adres"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Instellen als primair adres"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Lijn 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adresregel 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Lijn 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Adresregel 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Post code"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Plaats/regio"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Postcode plaats/regio"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Staat/provincie"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Staat of provincie"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Land"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Adres land"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Koerier verzend notities"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Opmerkingen voor verzending koerier"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Interne verzend notities"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Verzend notities voor intern gebruik"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Link naar adres gegevens (extern)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Fabrikant onderdeel"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Basis onderdeel"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Onderdeel selecteren"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Fabrikant selecteren"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "Fabrikant artikel nummer"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Fabrikant artikel nummer (MPN)"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL voor externe link van het fabrikant onderdeel"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Omschrijving onderdeel fabrikant"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Pakket eenheden moeten compatibel zijn met de basis onderdeel eenheden"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Hoeveelheid moet groter zijn dan nul"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderdeel"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Leverancier"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Leverancier selecteren"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Voorraad beheers eenheid voor leveranciers"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Is dit leveranciersdeel actief?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Selecteer fabrikant onderdeel"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL voor link externe leveranciers onderdeel"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Omschrijving leveranciersdeel"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "basisprijs"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimale kosten (bijv. voorraadkosten)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Verpakking"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Onderdeel verpakking"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Pakket hoeveelheid"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Totale hoeveelheid geleverd in één pakket. Laat leeg voor enkele afzonderlijke items."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "meerdere"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Order meerdere"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Beschikbare hoeveelheid van leverancier"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Beschikbaarheid bijgewerkt"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Datum van de laatste update van de beschikbaarheid gegevens"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Prijsverschil van leverancier"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Geeft als resultaat de string representatie voor het primaire adres. Deze eigenschap bestaat voor achterwaartse compatibiliteit."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Standaardvaluta die gebruikt wordt voor deze leverancier"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Bedrijfsnaam"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Op voorraad"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
-msgstr ""
+msgstr "Prijsverschillen"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Fout opgetreden tijdens data export"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Gegevensexport plug-in geeft onjuiste gegevensindeling terug"
@@ -4418,7 +4418,7 @@ msgstr "Oorspronkelijke rij gegevens"
msgid "Errors"
msgstr "Fouten"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Geldig"
@@ -4530,7 +4530,7 @@ msgstr "Aantal afdrukken voor elk label"
msgid "Connected"
msgstr "Verbonden"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Onbekend"
@@ -4540,7 +4540,7 @@ msgstr "Afdrukken"
#: machine/machine_types/label_printer.py:234
msgid "Warning"
-msgstr ""
+msgstr "Waarschuwing"
#: machine/machine_types/label_printer.py:235
msgid "No media"
@@ -4556,7 +4556,7 @@ msgstr "Verbinding verbroken"
#: machine/machine_types/label_printer.py:238
msgid "Error"
-msgstr ""
+msgstr "Error"
#: machine/machine_types/label_printer.py:245
msgid "Label Printer"
@@ -4628,11 +4628,11 @@ msgstr "Configuratie type"
#: machine/serializers.py:24
msgid "Key of the property"
-msgstr ""
+msgstr "Sleutel van de eigenschap"
#: machine/serializers.py:27
msgid "Value of the property"
-msgstr ""
+msgstr "Waarde van de eigenschap"
#: machine/serializers.py:30 users/models.py:238
msgid "Group"
@@ -4640,29 +4640,29 @@ msgstr "Groep"
#: machine/serializers.py:30
msgid "Grouping of the property"
-msgstr ""
+msgstr "Groepering van de eigenschap"
#: machine/serializers.py:33
msgid "Type"
-msgstr ""
+msgstr "Type"
#: machine/serializers.py:35
msgid "Type of the property"
-msgstr ""
+msgstr "Type van de eigenschap"
#: machine/serializers.py:40
msgid "Max Progress"
-msgstr ""
+msgstr "Maximale voortgang"
#: machine/serializers.py:41
msgid "Maximum value for progress type, required if type=progress"
-msgstr ""
+msgstr "Maximale waarde voor voortgangsttype, vereist als type=progress"
#: order/api.py:130
msgid "Order Reference"
msgstr "Order Referentie"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Uitmuntend"
@@ -4670,7 +4670,7 @@ msgstr "Uitmuntend"
msgid "Has Project Code"
msgstr "Heeft een projectcode"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Aangemaakt Door"
@@ -4710,11 +4710,11 @@ msgstr "Doel datum na"
msgid "Has Pricing"
msgstr "Heeft prijsstelling"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Voltooid voor"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Voltooid na"
@@ -4722,40 +4722,40 @@ msgstr "Voltooid na"
msgid "External Build Order"
msgstr "Externe Bouw Opdracht"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Bestellen"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Bestelling voltooid"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Intern onderdeel"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Bestelling in behandeling"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Voltooid"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Heeft verzending"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Inkooporder"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Inkooporder"
msgid "Sales Order"
msgstr "Verkooporder"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Totaalprijs"
msgid "Total price for this order"
msgstr "Totaalprijs van deze bestelling"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Valuta bestelling"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Valuta voor deze order (laat leeg om de standaard van het bedrijf te gebruiken)"
@@ -4803,242 +4803,242 @@ msgstr "Startdatum moet voor einddatum liggen"
#: order/models.py:391
msgid "Address does not match selected company"
-msgstr ""
+msgstr "Adres komt niet overeen met het geselecteerde bedrijf"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Bestelling beschrijving (optioneel)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Selecteer projectcode voor deze bestelling"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link naar externe pagina"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Start datum"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Geplande startdatum voor deze bestelling"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Streefdatum"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Verwachte datum voor levering van de bestelling. De bestelling wordt achterstallig na deze datum."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Datum van uitgifte"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Order uitgegeven op datum"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Gebruiker of groep verantwoordelijk voor deze order"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Contactpunt voor deze volgorde"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Bedrijf adres voor deze bestelling"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Orderreferentie"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Inkooporder status"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Bedrijf waar de artikelen van worden besteld"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Leveranciersreferentie"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Order referentiecode van leverancier"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "ontvangen door"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Order voltooid op datum"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Bestemming"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Bestemming voor ontvangen items"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Onderdeelleverancier moet overeenkomen met de Inkooporderleverancier"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Artikelregel komt niet overeen met inkooporder"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "Regelitem mist een gekoppeld deel"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Hoeveelheid moet een positief getal zijn"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Klant"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Bedrijf waaraan de artikelen worden verkocht"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Verkooporder status"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Klantreferentie "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Klant order referentiecode"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Verzenddatum"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "verzonden door"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Bestelling is al afgerond"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Order is al geannuleerd"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Alleen een open bestelling kan als voltooid worden gemarkeerd"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Bestelling kan niet worden voltooid omdat er onvolledige verzendingen aanwezig zijn"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "Order kan niet worden voltooid omdat er onvolledige artikelen aanwezig zijn"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Order kan niet worden voltooid omdat er onvolledige artikelen aanwezig zijn"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "De bestelling is vergrendeld en kan niet worden gewijzigd"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Hoeveelheid artikelen"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Artikelregel referentie"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Artikel notities"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Doeldatum voor dit regelitem (laat leeg om de doeldatum van de bestelling te gebruiken)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Regelomschrijving (optioneel)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Additionele context voor deze regel"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Stukprijs"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Inkooporder regel item"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Leveranciersonderdeel moet overeenkomen met leverancier"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "Bouw bestelling moet worden gemarkeerd als extern"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Bestellingen kunnen alleen aan assemblageonderdelen worden gekoppeld"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "De bouw van het order deel moet overeenkomen met regel onderdeel"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Leveranciersonderdeel"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Ontvangen"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Aantal ontvangen artikelen"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Inkoopprijs"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Aankoopprijs per stuk"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Externe Build Order moet aan deze regel voldoen"
@@ -5076,11 +5076,11 @@ msgstr "Verzending van verkooporder"
#: order/models.py:2254
msgid "Shipment address must match the customer"
-msgstr ""
+msgstr "Verzendadres moet overeenkomen met de klant"
#: order/models.py:2290
msgid "Shipping address for this shipment"
-msgstr ""
+msgstr "Verzendadres voor deze zending"
#: order/models.py:2298
msgid "Date of shipment"
@@ -5102,8 +5102,8 @@ msgstr "Gecontroleerd door"
msgid "User who checked this shipment"
msgstr "Gebruiker die deze zending gecontroleerd heeft"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Zending"
@@ -5138,7 +5138,7 @@ msgstr "Zending heeft geen toegewezen voorraadartikelen"
#: order/models.py:2388
msgid "Shipment must be checked before it can be completed"
-msgstr ""
+msgstr "Verzending moet worden gecontroleerd voordat deze kan worden voltooid"
#: order/models.py:2467
msgid "Sales Order Extra Line"
@@ -5164,7 +5164,11 @@ msgstr "Kan voorraad niet toewijzen aan een regel zonder onderdeel"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Toewijzingshoeveelheid kan niet hoger zijn dan de voorraadhoeveelheid"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Toewijzing hoeveelheid moet groter zijn dan nul"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Hoeveelheid moet 1 zijn voor geserialiseerd voorraadartikel"
@@ -5172,7 +5176,7 @@ msgstr "Hoeveelheid moet 1 zijn voor geserialiseerd voorraadartikel"
msgid "Sales order does not match shipment"
msgstr "Verkooporder komt niet overeen met zending"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Verzending komt niet overeen met verkooporder"
@@ -5256,248 +5260,248 @@ msgstr "Kosten geassocieerd met teruggave of reparatie voor deze regel item"
msgid "Return Order Extra Line"
msgstr "Retourneren extra regel"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "Bestelling ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID van de bestelling om te dupliceren"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Kopieer regels"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Kopieer regelitems uit de oorspronkelijke bestelling"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Extra regels kopiëren"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Extra regelitems van de oorspronkelijke bestelling kopiëren"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Artikelen"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Afgeronde regel items"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Artikel dupliceren"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Specificeer opties voor het dupliceren van deze bestelling"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Ongeldige order ID"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Leveranciers Naam"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Order kan niet worden geannuleerd"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Toestaan order te sluiten met onvolledige regelitems"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Bestelling heeft onvolledige regelitems"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Order is niet open"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Automatisch prijzen"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Koopprijs automatisch berekenen gebaseerd op leveranciers \n"
" onderdelen gegevens"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Valuta Inkoopprijs"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Items samenvoegen"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Items met hetzelfde onderdeel, bestemming en doeldatum samenvoegen in één regelitem"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Intern Onderdeelnummer"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Interne naam onderdeel"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Leveranciersonderdeel moet worden gespecificeerd"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Inkooporder moet worden gespecificeerd"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "De leverancier moet overeenkomen met de inkooporder"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Inkooporder moet overeenkomen met de leverancier"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Artikel"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Voer batch code in voor inkomende voorraad items"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Vervaldatum"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Voer vervaldatum in voor inkomende voorraad items"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Voer serienummers in voor inkomende voorraadartikelen"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Overschrijf verpakkingsinformatie voor binnenkomende voorraad"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Extra opmerking voor inkomende voorraad items"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Streepjescode"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Gescande streepjescode"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Streepjescode is al in gebruik"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Artikelen moeten worden opgegeven"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Bestemmingslocatie moet worden opgegeven"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Geleverde streepjescodewaarden moeten uniek zijn"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Verzendingen"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Voltooide Verzendingen"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Valuta verkoopprijs"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Toegewezen items"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Geen verzenddetails opgegeven"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Artikelregel is niet gekoppeld aan deze bestelling"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Hoeveelheid moet positief zijn"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Voer serienummers in om toe te wijzen"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Verzending is al verzonden"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Zending is niet gekoppeld aan deze bestelling"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Geen overeenkomst gevonden voor de volgende serienummers"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "De volgende serienummers zijn niet beschikbaar"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Retourneer regel item"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Artikelregel komt niet overeen met inkooporder"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Regel item is al ontvangen"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Artikelen kunnen alleen worden ontvangen tegen lopende bestellingen"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Hoeveelheid te retourneren"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Lijn prijs valuta"
@@ -5626,15 +5630,15 @@ msgstr "BOM Valid"
#: part/api.py:969
msgid "Cascade Categories"
-msgstr ""
+msgstr "Cascade Categorieën"
#: part/api.py:970
msgid "If true, include items in child categories of the given category"
-msgstr ""
+msgstr "Indien waar, inclusief items op de onderliggende categorieën van de opgegeven categorie"
#: part/api.py:976
msgid "Filter by numeric category ID or the literal 'null'"
-msgstr ""
+msgstr "Filter op numerieke categorie-ID of de letterlijke 'null'"
#: part/api.py:1258
msgid "Assembly part is testable"
@@ -5648,7 +5652,7 @@ msgstr "Component onderdeel is testbaar"
msgid "Uses"
msgstr "Gebruik"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Onderdeel Categorie"
@@ -5657,7 +5661,7 @@ msgstr "Onderdeel Categorie"
msgid "Part Categories"
msgstr "Onderdeel Categorieën"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Standaard locatie"
@@ -5665,7 +5669,7 @@ msgstr "Standaard locatie"
msgid "Default location for parts in this category"
msgstr "Standaard locatie voor onderdelen in deze categorie"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Structureel"
@@ -5681,12 +5685,12 @@ msgstr "Standaard trefwoorden"
msgid "Default keywords for parts in this category"
msgstr "Standaard trefwoorden voor delen in deze categorie"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Pictogram"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Pictogram (optioneel)"
@@ -5694,655 +5698,655 @@ msgstr "Pictogram (optioneel)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "U kunt deze voorraadlocatie niet structureel maken omdat sommige voorraadartikelen er al in liggen!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Sjabloon categorie parameters onderdeel"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Standaard waarde"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Standaard Parameter Waarde"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Onderdelen"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
-msgstr ""
+msgstr "Kan parameters van een vergrendeld onderdeel niet verwijderen"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
-msgstr ""
+msgstr "Kan de parameters van een vergrendeld onderdeel niet wijzigen"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Kan dit deel niet verwijderen omdat het vergrendeld is"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Kan dit deel niet verwijderen omdat het nog actief is"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Kan dit deel niet verwijderen omdat het in een groep gebruikt is"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "{self}' kan niet worden gebruikt in BOM voor '{parent}' (recursief)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "{parent}' wordt gebruikt in BOM voor '{self}' (recursief)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN moet overeenkomen met regex patroon {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Onderdeel kan geen herziening van zichzelf zijn"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Kan geen revisie maken van een onderdeel dat al een revisie is"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Revisie code moet worden opgegeven"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Herzieningen zijn alleen toegestaan voor assemblageonderdelen"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Kan geen revisie maken van een sjabloon onderdeel"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "Bovenliggend onderdeel moet naar dezelfde sjabloon verwijzen"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Voorraadartikel met dit serienummer bestaat al"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Dubbele IPN niet toegestaan in deelinstellingen"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Dubbele onderdeel revisie bestaat al."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Onderdeel met deze naam, IPN en Revisie bestaat al."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Onderdelen kunnen niet worden toegewezen aan categorieën van structurele onderdelen!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Onderdeel naam"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Is een sjabloon"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Is dit deel van een sjabloon?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Is dit een variant van een ander deel?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variant van"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Beschrijving (optioneel)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Sleutelwoorden"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Deel sleutelwoorden om de zichtbaarheid van de zoekresultaten te verbeteren"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Onderdeel Categorie"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Onderdeel revisie of versienummer"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revisie"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Is dit deel een herziening van een ander deel?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Revisie van"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Waar wordt dit item normaal opgeslagen?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Standaard leverancier"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Standaardleverancier"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Standaard verval datum"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Verlooptijd (in dagen) voor voorraadartikelen van dit deel"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimum voorraad"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Minimaal toegelaten stock niveau"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Eenheden voor dit onderdeel"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Kan dit onderdeel uit andere delen worden gebouwd?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Kan dit onderdeel gebruikt worden om andere onderdelen te bouwen?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Heeft dit onderdeel een tracking voor unieke items?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Kunnen de testresultaten van dit onderdeel tegen dit onderdeel worden geregistreerd?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Kan dit onderdeel worden gekocht van externe leveranciers?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Kan dit onderdeel aan klanten worden verkocht?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Is dit onderdeel actief?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Vergrendelde onderdelen kunnen niet worden bewerkt"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Is dit een virtueel onderdeel, zoals een softwareproduct of licentie?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "Stuklijst BOM gecontroleerd"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Is de BOM voor dit deel geldig?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "BOM checksum"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Checksum van BOM opgeslagen"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "BOM gecontroleerd door"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "BOM gecontroleerd datum"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Aanmaken gebruiker"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Eigenaar verantwoordelijk voor dit deel"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Verkopen van meerdere"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Valuta die gebruikt wordt voor de cache berekeningen"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimale BOM kosten"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Minimale kosten van onderdelen"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maximale BOM kosten"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Maximale kosten van onderdelen"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimale aankoop kosten"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Minimale historische aankoop kosten"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maximale aanschaf kosten"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Maximum historische aankoop kosten"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimale interne prijs"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Minimale kosten op basis van interne prijsschommelingen"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maximale interne prijs"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Maximale kosten gebaseerd op interne prijsvoordelen"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Minimale leverancier prijs"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Minimale prijs van onderdeel van externe leveranciers"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Maximale leverancier prijs"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Maximale prijs van onderdeel van externe leveranciers"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Minimale variant kosten"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Berekende minimale kosten van variant onderdelen"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Maximale variant kosten"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Berekende maximale kosten van variant onderdelen"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimale kostprijs"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Overschrijf minimale kosten"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maximale kosten"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Overschrijf maximale kosten"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Berekende minimale kosten"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Berekende totale maximale kosten"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Minimale verkoop prijs"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Minimale verkoopprijs gebaseerd op prijsschommelingen"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Maximale verkoop prijs"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Maximale verkoopprijs gebaseerd op prijsschommelingen"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Minimale verkoop prijs"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Minimale historische verkoop prijs"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Maximale verkoop prijs"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Maximale historische verkoop prijs"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Onderdeel voor voorraadcontrole"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Getelde items"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Aantal individuele voorraadvermeldingen op het moment van voorraadcontrole"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Totale voorraad op het moment van voorraadcontrole"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Datum"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Datum waarop voorraad werd uitgevoerd"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Minimale voorraadprijs"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Geschatte minimum kosten van de voorraad op de hand"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maximale voorraadkosten"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Geschatte maximale kosten van de hand van voorraad"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Periodieke verkoopprijs voor onderdelen"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Sjabloon test onderdeel"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Ongeldige sjabloonnaam - moet minstens één alfanumeriek teken bevatten"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Test sjablonen kunnen alleen worden gemaakt voor testbare onderdelen"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Test template met dezelfde sleutel bestaat al voor een deel"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Test naam"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Geef een naam op voor de test"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Test sleutel"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Vereenvoudigde sleutel voor de test"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Test beschrijving"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Voer beschrijving in voor deze test"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Is deze test ingeschakeld?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Vereist"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Is deze test nodig om te doorlopen?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Waarde vereist"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Heeft deze test een waarde nodig bij het toevoegen van een testresultaat?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Vereist bijlage"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Vereist deze test een bestandsbijlage bij het toevoegen van een testresultaat?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Geldige keuzes voor deze parameter (komma gescheiden)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "BOM item kan niet worden gewijzigd - assemblage is vergrendeld "
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "BOM item kan niet worden gewijzigd - assemblage is vergrendeld"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Selecteer boven liggend onderdeel"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sub onderdeel"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Selecteer onderdeel dat moet worden gebruikt in BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "BOM hoeveelheid voor dit BOM item"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Dit BOM item is optioneel"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Dit BOM item is verbruikbaar (het wordt niet bijgehouden in build orders)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Totale hoeveelheid"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "Extra benodigde hoeveelheid voor een build, rekening houdend met verliezen van de setup"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Attriatie"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Geschatte uitstraling voor een gebouw, uitgedrukt in percentage (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Afronden meerdere"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "Afronden met omhoog vereiste productiehoeveelheid naar dichtstbijzijnde meerdere van deze waarde"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Artikelregel referentie"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "BOM item notities"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Controle som"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "BOM lijn controle som"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Goedgekeurd"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Dit BOM item is goedgekeurd"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Wordt overgenomen"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Dit BOM item wordt overgenomen door BOMs voor variant onderdelen"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Voorraaditems voor variant onderdelen kunnen worden gebruikt voor dit BOM artikel"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Hoeveelheid moet een geheel getal zijn voor trackable onderdelen"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Onderdeel moet gespecificeerd worden"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "BOM Item vervangingen bewerken"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Vervanging onderdeel kan niet hetzelfde zijn als het hoofddeel"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Bovenliggend BOM item"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Vervanging onderdeel"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Eerste deel"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Tweede deel"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Selecteer gerelateerd onderdeel"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Opmerking voor deze relatie"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Onderdeel relatie kan niet worden gecreëerd tussen een deel en zichzelf"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Dubbele relatie bestaat al"
@@ -6466,203 +6470,199 @@ msgstr "Fabrikant deel dat overeenkomt met deze MPN bestaat al"
msgid "Supplier part matching this SKU already exists"
msgstr "Leveranciersdeel dat overeenkomt met deze SKU bestaat al"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Categorie naam"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Bouwen"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Hoeveelheid van dit deel dat momenteel in productie is"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "Er zal een onuitputtelijke hoeveelheid van dit deel worden gebouwd"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Voorraadartikelen"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Revisies"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Leveranciers"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Totale Voorraad"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Niet toegewezen voorraad"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Variant voorraad"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Dupliceer onderdeel"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Kopieer eerste gegevens uit een ander onderdeel"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Eerste voorraad"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Maak onderdeel met eerste voorraad"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Leveranciersgegevens"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Aanvankelijke leveranciersinformatie voor dit deel toevoegen"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Categorie parameters kopiëren"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Parameter sjablonen kopiëren uit geselecteerde onderdeel categorie"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Bestaande afbeelding"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Bestandsnaam van een bestaande onderdeel afbeelding"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Afbeeldingsbestand bestaat niet"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Valideer de gehele materiaalbon"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Kan bouwen"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Vereist voor bouworders"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Toegewezen aan bouwen van orders"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Vereist voor verkooporders"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Toegewezen aan verkooporders"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Minimale prijs"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Overschrijf berekende waarde voor minimale prijs"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Minimale prijs valuta"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Maximale prijs"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Overschrijf de berekende waarde voor de maximale prijs"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Maximale prijs valuta"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Bijwerken"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Prijzen voor dit onderdeel bijwerken"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Kan niet converteren van de verstrekte valuta naar {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Minimumprijs mag niet hoger zijn dan de maximale prijs"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Maximale prijs mag niet lager zijn dan de minimale prijs"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Selecteer de bovenliggende assemblage"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Selecteer het onderdeel"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Selecteer onderdeel om BOM van te kopiëren"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Bestaande gegevens verwijderen"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Verwijder bestaande BOM items voor het kopiëren"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Inclusief overgenomen"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Inclusief stuklijst BOM items die worden overgenomen van getemplated onderdelen"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Ongeldige regels overslaan"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Schakel deze optie in om ongeldige rijen over te slaan"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Verwijder vervangend deel"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Kopieer vervangende onderdelen bij dubbele stuklijst BOM items"
@@ -6733,108 +6733,108 @@ msgstr "Geen actie gespecificeerd"
msgid "No matching action found"
msgstr "Geen overeenkomende actie gevonden"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Geen overeenkomst gevonden voor streepjescodegegevens"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Overeenkomst gevonden voor streepjescodegegevens"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Model wordt niet ondersteund"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Model instantie niet gevonden"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Barcode komt overeen met bestaand item"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Geen overeenkomende actie gevonden"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Geen overeenkomende leveranciers onderdelen gevonden"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Meerdere overeenkomende leveranciers onderdelen gevonden"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Geen overeenkomende plug-in gevonden voor barcode gegevens"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Overeenkomende leverancier onderdeel"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Regel item is al ontvangen"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Er komt geen plug-in overeen met de barcode van de leverancier"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Meerdere overeenkomende regelitems gevonden"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Geen overeenkomend voorraaditem gevonden"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Geen verkooporder opgegeven"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Streepjescode komt niet overeen met een bestaand voorraadartikel"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Voorraad item komt niet overeen met regelitem"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Onvoldoende voorraad beschikbaar"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Voorraad item toegewezen aan verkooporder"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Te weinig informatie"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Gevonden overeenkomend item"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Leveranciersdeel komt niet overeen met regelitem"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Regelitem is al voltooid"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Verdere informatie vereist om regelitem te ontvangen"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Inkoopregel ontvangen"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Kon geen regelitem ontvangen"
@@ -6973,7 +6973,7 @@ msgstr "Biedt ondersteuning voor barcodes"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7071,111 +7071,111 @@ msgstr "Uitgeven achterhaalde orders"
msgid "Automatically issue orders that are backdated"
msgstr "Automatisch orders uitgeven die achterhaald zijn"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Niveau"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "Aantal te exporteren niveaus - ingesteld op nul om te exporteren alle BOM niveaus te exporteren"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Totale hoeveelheid"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "De totale hoeveelheid van elk onderdeel in de BOM opnemen"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Voorraad gegevens"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Inclusief voorraadgegevens"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Prijs gegevens"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Inclusief prijsgegevens"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Leveranciersgegevens"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Inclusief leveranciersgegevens"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Fabrikant gegevens"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Inclusief fabrikant gegevens"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Vervang Data"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Voeg vervangende deelgegevens toe"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Parameter gegevens"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Parametergegevens van onderdeel opnemen"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Meerdere niveau BOM export"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Biedt ondersteuning voor het exporteren van multi-level BOMs"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "BOM niveau"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Vervanging {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Leverancier {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "Leverancier {n} SKU"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "Leverancier {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Fabrikant {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "Fabrikant {n} MPN"
@@ -7190,19 +7190,19 @@ msgstr "Biedt ondersteuning voor het exporteren van gegevens van InvenTree"
#: plugin/builtin/exporter/parameter_exporter.py:16
msgid "Exclude Inactive"
-msgstr ""
+msgstr "Uitsluiten van niet-actief"
#: plugin/builtin/exporter/parameter_exporter.py:17
msgid "Exclude parameters which are inactive"
-msgstr ""
+msgstr "Uitsluiten van niet-actieve parameters"
#: plugin/builtin/exporter/parameter_exporter.py:29
msgid "Parameter Exporter"
-msgstr ""
+msgstr "Parameter exporteur"
#: plugin/builtin/exporter/parameter_exporter.py:30
msgid "Exporter for model parameter data"
-msgstr ""
+msgstr "Exporteur voor modelparameter gegevens"
#: plugin/builtin/exporter/stocktake_exporter.py:25
msgid "Include External Stock"
@@ -7355,11 +7355,11 @@ msgstr "InvenTree machine label printer"
msgid "Provides support for printing using a machine"
msgstr "Biedt ondersteuning voor het printen met een machine"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "laatst gebruikt"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Opties"
@@ -8073,7 +8073,7 @@ msgstr "Totaal"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Serienummer"
@@ -8143,7 +8143,7 @@ msgstr "Afbeelding bestand niet gevonden"
msgid "part_image tag requires a Part instance"
msgstr "part_image tag vereist een onderdeel instantie"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "bedrijf_imagetag vereist een bedrijfsinstantie"
@@ -8159,7 +8159,7 @@ msgstr "Filter op topniveau locaties"
msgid "Include sub-locations in filtered results"
msgstr "Inclusief sublocaties in gefilterde resultaten"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Bovenliggende locatie"
@@ -8285,20 +8285,20 @@ msgstr "Serienummers kunnen niet worden meegeleverd voor een niet traceerbaar on
#: stock/api.py:1396
msgid "Include Installed"
-msgstr ""
+msgstr "Inclusief geïnstalleerde"
#: stock/api.py:1398
msgid "If true, include test results for items installed underneath the given stock item"
-msgstr ""
+msgstr "Als correct, geef testresultaten voor items die onder het opgegeven voorraadartikel zijn geïnstalleerd"
#: stock/api.py:1405
msgid "Filter by numeric Stock Item ID"
-msgstr ""
+msgstr "Filter op numerieke voorraadartikel ID"
#: stock/api.py:1426
#, python-brace-format
msgid "Stock item with ID {id} does not exist"
-msgstr ""
+msgstr "Voorraadartikel met ID {id} bestaat niet"
#: stock/models.py:71
msgid "Stock Location type"
@@ -8312,314 +8312,314 @@ msgstr "Voorraad locatie soorten"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Standaardpictogram voor alle locaties waarvoor geen pictogram is ingesteld (optioneel)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Voorraadlocatie"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Voorraadlocaties"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Eigenaar"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Selecteer eigenaar"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Voorraaditems kunnen niet direct worden geplaatst op een structurele voorraadlocatie, maar kunnen zich op onderliggende locaties bevinden."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Extern"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Dit is een externe voorraadlocatie"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Locatie type"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Voorraad locatie type van deze locatie"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "U kunt deze voorraadlocatie niet structureel maken omdat sommige voorraadartikelen er al in liggen!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "{field} bestaat niet"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Onderdeel moet gespecificeerd worden"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Voorraaditems kunnen niet worden geplaatst in structurele voorraadlocaties!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Voorraadartikel kan niet worden aangemaakt voor virtuele onderdelen"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Onderdeel type ('{self.supplier_part.part}') moet {self.part} zijn"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Hoeveelheid moet 1 zijn voor item met een serienummer"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Serienummer kan niet worden ingesteld als de hoeveelheid groter is dan 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Item kan niet tot zichzelf behoren"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Item moet een bouw referentie hebben als is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Bouw referentie verwijst niet naar hetzelfde deel object"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Bovenliggend voorraad item"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Basis onderdeel"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Selecteer een leveranciersdeel voor dit voorraadartikel"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Waar bevindt zich dit voorraaditem?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Het verpakken van dit voorraaditem is opgeslagen in"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Geïnstalleerd in"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Is dit item geïnstalleerd in een ander item?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Serienummer van dit item"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Batch code voor dit voorraaditem"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Voorraad hoeveelheid"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Bron Bouw"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Build voor dit voorraaditem"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Verbruikt door"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Bestelling bouwen welke dit voorraadartikel heeft verbruikt"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Inkooporder Bron"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Inkooporder voor dit voorraadartikel"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Bestemming Verkooporder"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Vervaldatum voor voorraadartikel. Voorraad zal worden beschouwd als verlopen na deze datum"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Verwijderen bij leegmaken"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Verwijder dit voorraadproduct wanneer de voorraad is leeg"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Enkele eenheidsprijs van de aankoop op het moment van aankoop"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Omgezet tot onderdeel"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "Hoeveelheid overschrijdt beschikbare voorraad"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Onderdeel is niet ingesteld als traceerbaar"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Hoeveelheid moet heel getal zijn"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Hoeveelheid mag niet hoger zijn dan de beschikbare voorraad ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Serienummers moeten als lijst worden opgegeven"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Hoeveelheid komt niet overeen met serienummers"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
-msgstr ""
+msgstr "Kan voorraad niet toewijzen aan structurele locatie"
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Testsjabloon bestaat niet"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Voorraadartikel is toegewezen aan een verkooporder"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Voorraad item is geïnstalleerd in een ander item"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Voorraadartikel bevat andere producten"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Voorraadartikel is aan een klant toegewezen"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Voorraad item is momenteel in productie"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Geserialiseerde voorraad kan niet worden samengevoegd"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Dupliceer voorraadartikelen"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Voorraadartikelen moeten hetzelfde onderdeel verwijzen"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Voorraadartikelen moeten verwijzen naar dezelfde leveranciersdeel"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "De voorraad statuscodes moeten overeenkomen"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Voorraadartikel kan niet worden verplaatst omdat het niet op voorraad is"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Voorraad item volgen"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Item notities"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Resultaat voorraad test resultaten"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Waarde moet voor deze test worden opgegeven"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Bijlage moet worden geüpload voor deze test"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Ongeldige waarde voor deze test"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Test resultaat"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Test uitvoer waarde"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Test resultaat bijlage"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Test notities"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Test station"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "De identificatie van het teststation waar de test werd uitgevoerd"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Gestart"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Het tijdstip van de start test"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Afgerond"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Het tijdstip van de afgeronde test"
@@ -8663,43 +8663,43 @@ msgstr "Selecteer onderdeel voor het genereren van het serienummer voor"
msgid "Quantity of serial numbers to generate"
msgstr "Aantal serienummers om te genereren"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Test template voor dit resultaat"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
-msgstr ""
+msgstr "Geen overeenkomende test gevonden voor dit onderdeel"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "SjabloonID of testnaam moet worden opgegeven"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "De testtijd kan niet eerder zijn dan de starttijd van de test"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Bovenliggend Item"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Bovenliggende voorraad item"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Gebruik pakketgrootte bij het toevoegen: de hoeveelheid gedefinieerd is het aantal pakketten"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "Gebruik pakketgrootte"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Voer serienummers voor nieuwe items in"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Leverancier artikelnummer"
@@ -8733,8 +8733,8 @@ msgstr "Geen voorraad item opgegeven"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Hoeveelheid mag niet hoger zijn dan de beschikbare voorraad ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Locatie van bestemming"
@@ -8806,103 +8806,103 @@ msgstr "Selecteer voorraadartikelen om status te wijzigen"
msgid "No stock items selected"
msgstr "Geen voorraaditems geselecteerd"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sublocaties"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Bovenliggende voorraad locatie"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Onderdeel moet verkoopbaar zijn"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Artikel is toegewezen aan een verkooporder"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Artikel is toegewezen aan een productieorder"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Klant om voorraadartikelen toe te wijzen"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Geselecteerde bedrijf is geen klant"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Voorraad toewijzing notities"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Een lijst met voorraad artikelen moet worden opgegeven"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Voorraad samenvoegen notities"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Niet overeen komende leveranciers toestaan"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Toestaan dat voorraadartikelen met verschillende leveranciers onderdelen worden samengevoegd"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Sta onjuiste status toe"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Toestaan dat voorraadartikelen met verschillende statuscodes worden samengevoegd"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Er moeten ten minste twee voorraadartikelen worden opgegeven"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Geen wijziging"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Voorraaditem primaire sleutel waarde"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Voorraad artikel is niet op voorraad"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "Voorraad artikel is al in voorraad"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "Hoeveelheid mag niet negatief zijn"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Voorraad transactie notities"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "Samenvoegen in bestaande voorraad"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "Voeg indien mogelijk geretourneerde items samen in bestaande voorraad"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Volgend serienummer"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Vorig serienummer"
@@ -8960,7 +8960,7 @@ msgstr "Voorraad handmatig verwijderd"
#: stock/status_codes.py:56
msgid "Serialized stock items"
-msgstr ""
+msgstr "Geserialiseerde voorraadartikelen"
#: stock/status_codes.py:58
msgid "Returned to stock"
@@ -9384,83 +9384,83 @@ msgstr "Verkooporders"
msgid "Return Orders"
msgstr "Retour orders"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Gebruikersnaam"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Voornaam :"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Voornaam van de gebruiker"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Achternaam"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Achternaam van de gebruiker"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "E-mailadres van de gebruiker"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Medewerkers"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Heeft deze gebruiker medewerker machtigingen"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Administrator "
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Is deze gebruiker een administrator "
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Is dit gebruikersaccount actief"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Enkel een supergebruiker kan dit veld aanpassen"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Wachtwoord"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Wachtwoord voor de gebruiker"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "Overschrijf waarschuwing"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "Overschrijf de waarschuwing over wachtwoord regels"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "U hebt geen toestemming om gebruikers aan te maken"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Je account is aangemaakt."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Gebruik de wachtwoordreset functie om in te loggen"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Welkom bij InvenTree"
diff --git a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po
index 97d2525c34..fff1fc8e2b 100644
--- a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Language: no_NO\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API-endepunkt ikke funnet"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Brukeren har ikke rettigheter til å se denne modellen"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Kunne ikke konvertere {original} til {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Ugyldig mengde oppgitt"
@@ -112,13 +112,13 @@ msgstr "Oppgi dato"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Notater"
@@ -171,35 +171,35 @@ msgstr "Fjern HTML-tagger fra denne verdien"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Tilkoblingsfeil"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Serveren svarte med ugyldig statuskode"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Det har oppstått et unntak"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Serveren svarte med ugyldig \"Content-Length\"-verdi"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Bildestørrelsen er for stor"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Bildenedlasting overskred maksimal størrelse"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Ekstern server returnerte tomt svar"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Angitt URL er ikke en gyldig bildefil"
@@ -207,11 +207,11 @@ msgstr "Angitt URL er ikke en gyldig bildefil"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-post"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr "Referansen må samsvare påkrevd mønster"
msgid "Reference number is too large"
msgstr "Referansenummeret er for stort"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Ugyldig valg"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Navn"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Beskrivelse"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Beskrivelse (valgfritt)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Sti"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Duplikatnavn kan ikke eksistere under samme overordnede"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown-notater (valgfritt)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Strekkodedata"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Tredjeparts strekkodedata"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Strekkode-hash"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Unik hash av strekkodedata"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Eksisterende strekkode funnet"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serverfeil"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "En feil har blitt logget av serveren."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Bilde"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Må være et gyldig tall"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Velg valuta ut fra tilgjengelige alternativer"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Ugyldig verdi"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Eksternt bilde"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URLtil ekstern bildefil"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Nedlasting av bilder fra ekstern URL er ikke aktivert"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Ugyldig fysisk enhet"
msgid "Not a valid currency code"
msgstr "Ikke en gyldig valutakode"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Ordrestatus"
@@ -562,21 +562,21 @@ msgstr "Ordrestatus"
msgid "Parent Build"
msgstr "Overordnet produksjon"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Del"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategori"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Produksjonen må avbrytes før den kan slettes"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Forbruksvare"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Valgfritt"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Sammenstilling"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Spores"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Tildelt"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Tilgjengelig"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "I bestilling"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Produksjonsordre"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Plassering"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Produksjonsordre-referanse"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Salgsordrereferanse"
msgid "SalesOrder to which this build is allocated"
msgstr "Salgsordren denne produksjonen er tildelt til"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Kildeplassering"
@@ -857,17 +857,17 @@ msgstr "Produksjonsstatus"
msgid "Build status code"
msgstr "Produksjonsstatuskode"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Batchkode"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Batchkode for denne produksjonsartikkelen"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Opprettelsesdato"
@@ -887,7 +887,7 @@ msgstr "Forventet sluttdato"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Måldato for ferdigstillelse. Produksjonen vil være forfalt etter denne datoen."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Fullført dato"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Brukeren som utstedte denne produksjonsordren"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Ansvarlig"
@@ -913,12 +913,12 @@ msgstr "Ansvarlig"
msgid "User or group responsible for this build order"
msgstr "Bruker eller gruppe ansvarlig for produksjonsordren"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Ekstern lenke"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Lenke til ekstern URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Produksjonsordrens prioritet"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Prosjektkode"
@@ -960,7 +960,7 @@ msgstr "Produksjonsordre {build} er fullført"
msgid "A build order has been completed"
msgstr "En produksjonsordre er fullført"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Serienumre må angis for sporbare deler"
@@ -976,23 +976,23 @@ msgstr "Produksjonsartikkelen er allerede fullført"
msgid "Build output does not match Build Order"
msgstr "Produksjonsartikkelen samsvarer ikke med produksjonsordren"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Mengden må være større enn null"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Kvantitet kan ikke være større enn utgangsantallet"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Produksjonsartikkel {serial} har ikke bestått alle påkrevde tester"
@@ -1001,18 +1001,18 @@ msgstr "Produksjonsartikkel {serial} har ikke bestått alle påkrevde tester"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Produksjonsartikkel"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Produksjonsobjekt"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Produksjonsobjekt"
msgid "Quantity"
msgstr "Antall"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Påkrevd antall for produksjonsordre"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Produksjonselement må spesifisere en produksjonsartikkel, da master-del er merket som sporbar"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Valgt lagervare samsvarer ikke med BOM-linjen"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Mengden må være 1 for serialisert lagervare"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Tildelt antall ({q}) kan ikke overstige tilgjengelig lagerbeholdning ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Lagervaren er overtildelt"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Tildelingsantall må være større enn null"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Mengden må være 1 for serialisert lagervare"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Valgt lagervare samsvarer ikke med BOM-linjen"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Lagervare"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Kildelagervare"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Lagerantall å tildele til produksjonen"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Monteres i"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Lagervare for montering"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Delnavn"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Etikett for prosjektkode"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Produksjonsartikkel"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Produksjonsartikkel samsvarer ikke med overordnet produksjon"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Resultatdel samsvarer ikke med produksjonsordredel"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Denne produksjonsartikkelen er allerede fullført"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Denne produksjonsartikkelen er ikke fullt tildelt"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Angi antall for produksjonsartikkel"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Heltallsverdi kreves for sporbare deler"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Heltallsverdi kreves, da stykklisten inneholder sporbare deler"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Serienummer"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Angi serienummer for produksjonsartikler"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Lagerplassering for produksjonsartikkel"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Automatisk tildeling av serienummer"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Automatisk tildeling av nødvendige artikler med tilsvarende serienummer"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Følgende serienummer finnes allerede eller er ugyldige"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "En liste over produksjonsartikler må oppgis"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Lagerplassering for skrotede produksjonsartikler"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Forkast tildelinger"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Forkast tildelinger fra skrotede produksjonsartikler"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Grunn for skroting av produksjonsartikler"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Plassering for ferdige produksjonsartikler"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Godta ufullstendig tildeling"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Fullfør artikler dersom lagerbeholdning ikke er fullt tildelt"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Bruk tildelt lagerbeholdning"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Bruk all lagerbeholdning som allerede er tildelt denne produksjonen"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Fjern ufullstendige artikler"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Slett alle produksjonsartikler som ikke er fullført"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Ikke tillatt"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Godta som brukt av denne produksjonsordren"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Fjern tildeling før produksjonsordren fullføres"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Overtildelt lagerbeholdning"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Hvordan vil du håndtere ekstra lagervarer tildelt produksjonsordren"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Noen lagervarer har blitt overtildelt"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Godta ikke tildelt"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Godta at lagervarer ikke er fullt tildelt til denne produksjonsordren"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Nøvendig lagerbeholdning er ikke fullt tildelt"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Godta uferdig"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Godta at nødvendig antall fullførte produksjonsartikler ikke er nådd"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Nødvendig produksjonsmengde er ikke nådd"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Produksjonsordren har uferdige artikler"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Produksjonslinje"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Produksjonsartikkel"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Produksjonsartikkel må peke til samme produksjon"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Produksjonsartikkel"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part må peke på den samme delen som produksjonsordren"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Artikkelen må være på lager"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Tilgjengelig antall ({q}) overskredet"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Produksjonsartikkel må spesifiseres for tildeling av sporede deler"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Produksjonsartikkel kan ikke spesifiseres for tildeling av usporede deler"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Tildelingsartikler må oppgis"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Lagerplassering hvor deler skal hentes (la stå tomt for å ta fra alle plasseringer)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Eksluderer plassering"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Ekskluder lagervarer fra denne valgte plasseringen"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Utskiftbar lagerbeholdning"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Lagervarer ved flere plasseringer kan brukes om hverandre"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Erstatning-lagerbeholdning"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Tilatt tildelling av erstatningsdeler"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Valgfrie artikler"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Tildel valgfrie BOM-artikler til produksjonsordre"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Kunne ikke starte auto-tideling"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "BOM-referanse"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Leverandørdel"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Tildelt antall"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Produksjonsreferanse"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Delkategorinavn"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Sporbar"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Nedarvet"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Tillat Varianter"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "BOM-artikkel"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "I produksjon"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Ekstern lagerbeholdning"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Tilgjengelig lagerbeholdning"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Tilgjengelige erstatningsvarer"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Tilgjengelige variantvarer"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Forfalt produksjonsordre"
msgid "Build order {bo} is now overdue"
msgstr "Produksjonsordre {bo} er nå forfalt"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Er lenke"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Er fil"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Brukeren har ikke tillatelse til å slette dette vedlegget"
@@ -1530,7 +1522,11 @@ msgstr "Ingen gyldige valutakoder angitt"
msgid "No plugin"
msgstr "Ingen programtillegg"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Etikett for prosjektkode"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Oppdatert"
@@ -1558,7 +1554,7 @@ msgstr "Prosjektbeskrivelse"
msgid "User or group responsible for this project"
msgstr "Bruker eller gruppe ansvarlig for dette prosjektet"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr "Nøkkelstreng må være unik"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Bruker"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Antall for prisbrudd"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Pris"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Enhetspris på spesifisert antall"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Endepunkt"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Endepunktet hvor denne webhooken er mottatt"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Navn for webhooken"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktiv"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Er webhooken aktiv"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Sjetong"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Nøkkel for tilgang"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Hemmelig"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Delt hemmlighet for HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Melding ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Unik Id for denne meldingen"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Vert"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Verten denne meldingen ble mottatt fra"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Tittel"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Overskrift for denne meldingen"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Brødtekst"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Innholdet i meldingen"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Endepunktet meldingen ble mottatt fra"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Arbeidet med"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Var arbeidet med denne meldingen ferdig?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Tittel"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Lenke"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Publisert"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Forfatter"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Sammendrag"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Les"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Er dette nyhetselementet lest?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Bildefil"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Enhetssymbolet må være unikt"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Enhetsnavn må være en gyldig identifikator"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Enhetsnavn"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Valgfritt enhetssymbol"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definisjon"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Enhetsdefinisjon"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Vedlegg"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Fil mangler"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Mangler eksternlenke"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Velg fil å legge ved"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Kommentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Vedleggskommentar"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Opplastet dato"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Datoen som filen ble lastet opp"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Filstørrelse"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Filstørrelse i byte"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Ugyldig modelltype spesifisert for vedlegg"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Verdi"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Opprettet"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Sist oppdatert"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Parametermal"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Sjekkboksparameter kan ikke ha enheter"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Sjekkboksparameter kan ikke ha valg"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Valg må være unike"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Navn på parametermal må være unikt"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Parameternavn"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Enheter"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Fysisk enheter for denne parameteren"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Parameterbeskrivelse"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Sjekkboks"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Er dette parameteret en sjekkboks?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Valg"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Gyldige valg for denne parameteren (kommaseparert)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Aktivert"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Ugyldig valg for parameterverdi"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Mal"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Parameterverdi"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Parameterverdi"
msgid "Note"
msgstr "Notat"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Valgfritt notatfelt"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontekst"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultat"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Nøkkel"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} kansellert"
msgid "A order that is assigned to you was canceled"
msgstr "En ordre som er tildelt til deg ble kansellert"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Artikler mottatt"
@@ -2351,93 +2347,101 @@ msgstr "Artikler har blitt mottatt mot en innkjøpsordre"
msgid "Items have been received against a return order"
msgstr "Artikler har blitt mottatt mot en returordre"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Kjører"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Ventende oppgaver"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Planlagte oppgaver"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Mislykkede oppgaver"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Oppgave-ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Unik oppgave-ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Lås"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Låsetidspunkt"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Oppgavenavn"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funksjon"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Funksjonsnavn"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumenter"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Oppgaveargumenter"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Nøkkelordargumenter"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Nøkkelordargumenter for oppgave"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Filnavn"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Modelltype"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Brukeren har ikke tillatelse tillatelse å opprette eller endre vedlegg for denne modellen"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Ingen gruppe"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Nettstedets URL er låst av konfigurasjon"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Omstart kreves"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "En innstilling har blitt endret som krever en omstart av serveren"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Ventende migrasjoner"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Antall ventende databasemigreringer"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Navn på serverinstans"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Strengbeskrivelse for serverinstansen"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Bruk instansnavn"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Bruk instansnavnet på tittellinjen"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Begrens visning av 'om'"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Vis `about`-modal kun til superbrukere"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Firmanavn"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Internt firmanavn"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Base-URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Base-URL for serverinstans"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Standardvaluta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Velg grunnvalutaen for prisberegninger"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Støttede valutaer"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Liste over støttede valutakoder"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Oppdateringsintervall for valuta"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Hvor ofte valutakurser skal oppdateres (sett til null for å deaktiverere)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dager"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Valutaoppdaterings-plugin"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Valgt valutaoppdaterings-plugin"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Last ned fra URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Tillat nedlastning av eksterne bilder og filer fra ekstern URL"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Nedlastingsgrense"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maksimal tillatt nedlastingsstørrelse for eksternt bilde"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-Agent brukt for å laste ned fra URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Tillat overstyring av User-Agent brukt for å laste ned bilder og filer fra eksterne URLer (lå stå blank for standard)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Streng URL-validering"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Krev skjemaspesifikasjon ved validering av URLer"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Intervall for oppdateringssjekk"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Tidsintervall for å se etter oppdateringer(sett til null for å skru av)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatisk sikkerhetskopiering"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Aktiver automatisk sikkerhetskopiering av database og mediafiler"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Automatisk sikkerhetskopieringsintervall"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Angi antall dager mellom automatiske sikkerhetskopieringshendelser"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Slettingsintervall for oppgaver"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Bakgrunnsoppgaveresultater vil bli slettet etter antall angitte dager"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Slettingsintervall for feillogg"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Feilloggene vil bli slettet etter et angitt antall dager"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Slettingsintervall for varsler"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Brukervarsler slettes etter angitt antall dager"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Strekkodestøtte"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Aktiver støtte for strekkodeleser i webgrensesnittet"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Innlesingsforsinkelse for strekkode"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Tidsforsinkelse for behandling av strekkode"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Støtte for strekkodewebkamera"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Tillat strekkodelesning via webkamera i nettleseren"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Vis Strekkodedata"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Vis strekkodedata som tekst"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Delrevisjoner"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Aktiver revisjonsfeltet for Del"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Regulært uttrykksmønster for matching av internt delnummer"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Tilat duplikat av internt delnummer"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Tillat flere deler å dele samme interne delnummer"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Tillat redigering av internt delnummer"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Tillat endring av IPN-verdien mens du redigerer en del"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Kopier BOM-data fra del"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Kopier BOM-data som standard når du dupliserer en del"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Kopier parameterdata fra del"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Kopier parameterdata som standard ved duplisering av en del"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Kopier testdata fra del"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Kopier testdata som standard ved duplisering av en del"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kopier designmaler for kategoriparametere"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kopier parametermaler for kategori ved oppretting av en del"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Deler er maler som standard"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Deler kan settes sammen fra andre komponenter som standard"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponent"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Deler kan bli brukt som underkomponenter som standard"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Kjøpbar"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Deler er kjøpbare som standard"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Salgbar"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Deler er salgbare som standard"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Deler er sporbare som standard"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuelle"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Deler er virtuelle som standard"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Vis relaterte deler"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Vis relaterte deler i en del"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Innledende lagerbeholdningsdata"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Tillat oppretting av innledende lagerbeholdning når en ny del opprettes"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Innledende leverandørdata"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Tillat oppretting av innledende leverandørdata når en ny del opprettes"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Visningsformat for delnavn"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Format for å vise delnavnet"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Standardikon for delkategorier"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Standardikon for delkategorier (tomt betyr ingen ikon)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Minimum antall desimalplasser for priser"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Minimum antall desimalplasser som skal vises når man gjengir prisdata"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Maksimalt antall desimalplasser for priser"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Maksimalt antall desimalplasser som skal vises når man gjengir prisdata"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Bruk leverandørpriser"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Inkluder leverandørprisbrudd i beregninger av totalpriser"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Innkjøpshistorikkoverstyring"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Historiske innkjøpspriser overstyrer leverandørprisnivåer"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Bruk lagervarepriser"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Bruk priser fra manuelt innlagte lagervarer for prisberegninger"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Lagervare prisalder"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Unnta lagervarer som er eldre enn dette antall dager fra prisberegninger"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Bruk Variantpriser"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Inkluder variantpriser i beregninger av totale priser"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Kun aktive varianter"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Bruk kun aktive variantdeler til beregning av variantprising"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervall for rekalkulering av priser"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Antall dager før delpriser blir automatisk oppdatert"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Interne Priser"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Aktiver interne priser for deler"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Intern prisoverstyring"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Hvis tilgjengelig, overstyrer interne priser kalkulering av prisområde"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Aktiver etikettutskrift"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Aktiver utskrift av etiketter fra nettleseren"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Etikettbilde-DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "DPI-oppløsning når når det genereres bildefiler for sending til utvidelser for etikettutskrift"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Aktiver Rapporter"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Aktiver generering av rapporter"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Feilsøkingsmodus"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Generer rapporter i feilsøkingsmodus (HTML-output)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Sidestørrelse"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Standard sidestørrelse for PDF-rapporter"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Tving parameterenheter"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Hvis det er angitt en enhet, skal parameterverdiene samsvare med de angitte enhetene"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Globalt Unike Serienummer"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Serienummer for lagervarer må være globalt unike"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Slett oppbrukt lagerbeholdning"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Batchkodemal"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Mal for generering av standard batchkoder for lagervarer"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Lagerbeholdning utløper"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Aktiver funksjonalitet for utløp av lagerbeholdning"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Selg utløpt lagerbeholdning"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Tillat salg av utgått lagerbeholdning"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Foreldet lagerbeholdning tidsintervall"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Antall dager før lagervarer er ansett som foreldet før utløp"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Produsér Utløpt Lagerbeholdning"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Tillat produksjon med utløpt lagerbeholdning"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Kontroll over eierskap av lagerbeholdning"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Aktiver eierskap over lagerplasseringer og -varer"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Lagerplassering standard ikon"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Lagerplassering standard ikon (tomt betyr ingen ikon)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Vis installerte lagervarer"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Vis installerte lagervarer i lagertabeller"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Produksjonsordre-referansemønster"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Nødvendig mønster for å generere Produksjonsordre-referansefeltet"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Aktiver returordrer"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Aktiver returordrefunksjonalitet i brukergrensesnittet"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Returordre-referansemønster"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Rediger fullførte returordrer"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Tillat redigering av returordrer etter de er fullført"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Salgsordre-referansemønster"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Påkrevd mønster for å generere salgsordrereferansefelt"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Salgsordre standard fraktmetode"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Aktiver opprettelse av standard forsendelse med salgsordrer"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Rediger fullførte salgsordrer"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Tillat redigering av salgsordrer etter de har blitt sendt eller fullført"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Referansemønster for innkjøpsordre"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Obligatorisk mønster for generering av referansefelt for innkjøpsordre"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Rediger fullførte innkjøpsordre"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Tillat redigering av innkjøpsordre etter at de har blitt sendt eller fullført"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Autofullfør innkjøpsordrer"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Automatisk merk innkjøpsordre som fullført når alle ordrelinjer er mottatt"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Aktiver passord glemt"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Ativer funskjon for glemt passord på innloggingssidene"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Aktiver registrering"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Aktiver egenregistrerting for brukerer på påloggingssidene"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Aktiver SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Aktiver SSO på innloggingssidene"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Aktiver SSO-registrering"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Aktiver selvregistrering via SSO for brukere på innloggingssiden"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "E-postadresse kreves"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Krevt at brukere angir e-post ved registrering"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Auto-utfyll SSO-brukere"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Fyll automatisk ut brukeropplysninger fra SSO-kontodata"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "E-post to ganger"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Spør brukeren om e-post to ganger ved registrering"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Passord to ganger"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Spør brukeren om passord to ganger ved registrering"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Tillatte domener"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Begrens registrering til bestemte domener (kommaseparert, begynner med @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Gruppe ved registrering"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Krev MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Brukere må bruke flerfaktorsikkerhet."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Sjekk utvidelser ved oppstart"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Sjekk at alle utvidelser er installert ved oppstart - aktiver i containermiljøer"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Aktiver URL-integrasjon"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Tillat utvidelser å legge til URL-ruter"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Aktiver navigasjonsintegrasjon"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Tillat utvidelser å integrere mot navigasjon"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Aktiver app-integrasjon"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Tillat utvidelser å legge til apper"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Aktiver tidsplanintegrasjon"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Tillat utvidelser å kjøre planlagte oppgaver"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Aktiver hendelsesintegrasjon"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Tillat utvidelser å reagere på interne hendelser"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Ekskluder eksterne plasseringer"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Automatisk varetellingsperiode"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Vis brukernes fulle navn"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Vis brukernes fulle navn istedet for brukernavn"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "Delen er aktiv"
msgid "Manufacturer is Active"
msgstr "Leverandør er aktiv"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Leverandørdel er aktiv"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Intern del er aktiv"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Leverandør er aktiv"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Produsent"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Firma"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr "Kontakt-telefonnummer"
msgid "Contact email address"
msgstr "Kontakt e-post"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakt"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adresse"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adresser"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Velg selskap"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Adressetittel"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Tittel som beskriver addressen"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Hovedadresse"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Sett som hovedadresse"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Linje 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adresselinje 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Linje 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Adresselinje 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Postnummer"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Poststed/område"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Postnummerets by/område"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Delstat/provins"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Delstat eller provins"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Land"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Adressens land"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notater til transportør"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notater for transportør"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Interne fraktnotater"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Fraktnotater for internt bruk"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Lenke til adresseinformasjon (ekstern)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Produsentdeler"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Basisdel"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Velg del"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Velg produsent"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Produsentens varenummer"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL for ekstern produsentdel-lenke"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Produsentens delbeskrivelse"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Pakkeenhetene må være komptible med delens basisenhet"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Pakkeenhet må være mer enn null"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Den sammenkoblede produsentdelen må referere til samme basisdel"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Leverandør"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Velg leverandør"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Leverandørens lagerbeholdningsenhet"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Er denne leverandørdelen aktiv?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Velg produsentdel"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL for ekstern leverandørdel-lenke"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Leverandørens delbeskrivelse"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "grunnkostnad"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimum betaling (f.eks. lageravgift)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Emballasje"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Delemballasje"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Pakkeantall"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Totalt antall i en enkelt pakke. La være tom for enkeltenheter."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "flere"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Bestill flere"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Antall tilgjengelig fra leverandør"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Tilgjengelighet oppdatert"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Dato for siste oppdatering av tilgjengelighetsdata"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Leverandørens prisbrudd"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Standardvaluta brukt for denne leverandøren"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Bedriftsnavn"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "På lager"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Gyldig"
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Ukjent"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Ordrereferanse"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Opprettet av"
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Ordre"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Intern del"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Fullført"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Innkjøpsordre"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Innkjøpsordre"
msgid "Sales Order"
msgstr "Salgsordre"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Total pris"
msgid "Total price for this order"
msgstr "Total pris for denne ordren"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Ordrevaluta"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Valuta for denne ordren (la stå tom for å bruke firmastandard)"
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Ordrebeskrivelse (valgfritt)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Velg prosjektkode for denne ordren"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Lenke til ekstern side"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Måldato"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Forventet dato for levering av ordre. Bestillingen vil være forfalt etter denne datoen."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Sendt dato"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Dato bestillingen ble sendt"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Bruker eller gruppe ansvarlig for ordren"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Kontaktpunkt for denne ordren"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Selskapsadresse for denne ordren"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Ordrereferanse"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Status for innkjøpsordre"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Firma som varene blir bestilt fra"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Leverandørreferanse"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Leverandørens ordrereferanse"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "mottatt av"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Dato ordre ble fullført"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destinasjon"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Delleverandør må matche PO-leverandør"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Linjeelementet samsvarer ikke med innkjøpsordre"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Mengde må være positiv"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Kunde"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Firma som varene selges til"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Kundereferanse "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Kundens ordrereferanse"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Forsendelsesdato"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "sendt av"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Kun en åpen ordre kan merkes som fullført"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Bestillingen kan ikke fullføres da det finnes ufullstendige forsendelser"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Denne ordren kan ikke fullføres da det fortsatt er ufullstendige artikler"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Antall"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Linjereferanse"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Linjenotater"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Måldato for denne linjen (la stå tomt for å bruke måldatoen fra ordren)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Linjeelementbeskrivelse (valgfritt)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Ytterligere kontekst for denne linjen"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Enhetspris"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Delens leverandør må samsvare med leverandør"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Leverandørdel"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Mottatt"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Antall enheter mottatt"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Innkjøpspris"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Enhet-innkjøpspris"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Sjekket Av"
msgid "User who checked this shipment"
msgstr "Brukeren som sjekket forsendelsen"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Forsendelse"
@@ -5164,7 +5164,11 @@ msgstr "Kan ikke tildele lagerbeholdning til en linje uten en del"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Tildelingsantall kan ikke overstige tilgjengelig lagerbeholdning"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Tildelingsantall må være større enn null"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Antall må være 1 for serialisert lagervare"
@@ -5172,7 +5176,7 @@ msgstr "Antall må være 1 for serialisert lagervare"
msgid "Sales order does not match shipment"
msgstr "Salgsordre samsvarer ikke med forsendelse"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Forsendelsen samsvarer ikke med salgsordre"
@@ -5256,247 +5260,247 @@ msgstr "Kostnad forbundet med retur eller reparasjon for dette linjeelementet"
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Linjeelementer"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Leverandørnavn"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Ordren kan ikke kanselleres"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Tillat ordre å lukkes med ufullstendige linjeelementer"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Ordren har ufullstendige linjeelementer"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Ordren er ikke åpen"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Innkjøpsvaluta"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU-kode"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Internt delnummer"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Leverandørdel må angis"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Innkjøpsordre må angis"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Leverandør må samsvare med innkjøpsordre"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Innkjøpsordre må samsvare med leverandør"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Ordrelinje"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Velg lagerplassering for mottatte enheter"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Angi batchkode for innkommende lagervarer"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Utløpsdato"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Angi serienummer for innkommende lagervarer"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Strekkode"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Skannet strekkode"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Strekkode allerede i bruk"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Linjeelementer må være oppgitt"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Målplassering må angis"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Angitte strekkodeverdier må være unike"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Fullførte forsendelser"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Valuta for salgspris"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Ingen forsendelsesopplysninger oppgitt"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Linjeelement er ikke knyttet til denne ordren"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Mengden må være positiv"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Skriv inn serienummer for å tildele"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Forsendelsen er allerede sendt"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Forsendelsen er ikke knyttet til denne ordren"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Ingen treff funnet for følgende serienummer"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Returordrelinje"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Linjeelementet samsvarer ikke med returordre"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Linjeelementet er allerede mottatt"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Artikler kan bare mottas mot ordrer som pågår"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Valuta for linje"
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Delkategori"
@@ -5656,7 +5660,7 @@ msgstr "Delkategori"
msgid "Part Categories"
msgstr "Delkategorier"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Standard plassering"
@@ -5664,7 +5668,7 @@ msgstr "Standard plassering"
msgid "Default location for parts in this category"
msgstr "Standardplassering for deler i denne kategorien"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Strukturell"
@@ -5680,12 +5684,12 @@ msgstr "Standard nøkkelord"
msgid "Default keywords for parts in this category"
msgstr "Standard nøkkelord for deler i denne kategorien"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ikon"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ikon (valgfritt)"
@@ -5693,655 +5697,655 @@ msgstr "Ikon (valgfritt)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Du kan ikke gjøre denne delkategorien strukturell fordi noen deler allerede er tilordnet den!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Standardverdi"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Standard Parameterverdi"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Deler"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Delen '{self}' kan ikke brukes i BOM for '{parent}' (rekursiv)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Delen '{parent}' er brukt i BOM for '{self}' (rekursiv)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN må samsvare med regex-mønsteret {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Lagervare med dette serienummeret eksisterer allerede"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Duplikat av internt delnummer er ikke tillatt i delinnstillinger"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Del med dette Navnet, internt delnummer og Revisjon eksisterer allerede."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Deler kan ikke tilordnes strukturelle delkategorier!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Delnavn"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Er Mal"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Er delen en maldel?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Er delen en variant av en annen del?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variant av"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Delbeskrivelse (valgfritt)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Nøkkelord"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Del-nøkkelord for å øke synligheten i søkeresultater"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Delkategori"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Delrevisjon eller versjonsnummer"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revisjon"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Hvor er denne artikkelen vanligvis lagret?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Standard leverandør"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Standard leverandørdel"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Standard utløp"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Utløpstid (i dager) for lagervarer av denne delen"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimal lagerbeholdning"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Minimum tillatt lagernivå"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Måleenheter for denne delen"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Kan denne delen bygges fra andre deler?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Kan denne delen brukes til å bygge andre deler?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Har denne delen sporing av unike artikler?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Kan denne delen kjøpes inn fra eksterne leverandører?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Kan denne delen selges til kunder?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Er denne delen aktiv?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Er dette en virtuell del, som et softwareprodukt eller en lisens?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Kontrollsum for BOM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Lagret BOM-kontrollsum"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Stykkliste sjekket av"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Stykkliste sjekket dato"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Opprettingsbruker"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Eier ansvarlig for denne delen"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Selg flere"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Valuta som brukes til å bufre prisberegninger"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimal BOM-kostnad"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Minste kostnad for komponentdeler"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maksimal BOM-kostnad"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Maksimal kostnad for komponentdeler"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimal innkjøpskostnad"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Minimal historisk innkjøpskostnad"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maksimal innkjøpskostnad"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Maksimal historisk innkjøpskostnad"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimal intern pris"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Minimal kostnad basert på interne prisbrudd"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maksimal intern pris"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Maksimal kostnad basert på interne prisbrudd"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Minimal leverandørpris"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Minimumspris for del fra eksterne leverandører"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Maksimal leverandørpris"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Maksimalpris for del fra eksterne leverandører"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Minimal Variantkostnad"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Beregnet minimal kostnad for variantdeler"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Maksimal Variantkostnad"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Beregnet maksimal kostnad for variantdeler"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimal kostnad"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Overstyr minstekostnad"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maksimal kostnad"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Overstyr maksimal kostnad"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Beregnet samlet minimal kostnad"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Beregnet samlet maksimal kostnad"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Minimal salgspris"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Minimal salgspris basert på prisbrudd"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Maksimal Salgspris"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Maksimal salgspris basert på prisbrudd"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Minimal Salgskostnad"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Minimal historisk salgspris"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Maksimal Salgskostnad"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Maksimal historisk salgspris"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Del for varetelling"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Antall"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Antall individuelle lagerenheter på tidspunkt for varetelling"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Total tilgjengelig lagerbeholdning på tidspunkt for varetelling"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Dato"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Dato for utført lagertelling"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Minimal lagerkostnad"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Estimert minimal kostnad for lagerbeholdning"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maksimal lagerkostnad"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Estimert maksimal kostnad for lagerbeholdning"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Testnavn"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Angi et navn for testen"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Testbeskrivelse"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Legg inn beskrivelse for denne testen"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Påkrevd"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Er det påkrevd at denne testen bestås?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Krever verdi"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Krever denne testen en verdi når det legges til et testresultat?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Krever vedlegg"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Krever denne testen et filvedlegg når du legger inn et testresultat?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Velg overordnet del"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Underordnet del"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Velg del som skal brukes i BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "BOM-antall for denne BOM-artikkelen"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Denne BOM-artikkelen er valgfri"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Denne BOM-artikkelen er forbruksvare (den spores ikke i produksjonsordrer)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "BOM-artikkelreferanse"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "BOM-artikkelnotater"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Kontrollsum"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "BOM-linje kontrollsum"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Godkjent"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Denne BOM-artikkelen er godkjent"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Arves"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Denne BOM-artikkelen er arvet fra stykkliste for variantdeler"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Lagervarer for variantdeler kan brukes for denne BOM-artikkelen"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Antall må være heltallsverdi for sporbare deler"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Underordnet del må angis"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "BOM-artikkel erstatning"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Erstatningsdel kan ikke være samme som hoveddelen"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Overordnet BOM-artikkel"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Erstatningsdel"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Del 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Del 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Velg relatert del"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Del-forhold kan ikke opprettes mellom en del og seg selv"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Duplikatforhold eksisterer allerede"
@@ -6465,203 +6469,199 @@ msgstr "Produsentdel som matcher dette MPN-et, finnes allerede"
msgid "Supplier part matching this SKU already exists"
msgstr "Leverandørdel som matcher denne SKU-en, finnes allerede"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Kategorinavn"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Produseres"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Lagervarer"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Leverandører"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Total lagerbeholdning"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Dupliser del"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Kopier innledende data fra en annen del"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Innledende lagerbeholdning"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Lag en del med innledende lagermengde"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Leverandøropplysninger"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Legg til innledende leverandørinformasjon for denne delen"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Kopier kategoriparametre"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Kopier parametermaler fra valgt delkategori"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Eksisterende bilde"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Filnavn for et eksisterende del-bilde"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Bildefilen finnes ikke"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Godkjenn hele Stykklisten"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Kan Produsere"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Minstepris"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Overstyr beregnet verdi for minimumspris"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Valuta for minstepris"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Makspris"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Overstyr beregnet verdi for maksimal pris"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Valuta for maksimal pris"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Oppdater"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Oppdater priser for denne delen"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Kan ikke konvertere fra gitte valutaer til {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Minsteprisen kan ikke være større enn maksimal pris"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Maksimal pris kan ikke være mindre enn minstepris"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Velg del å kopiere BOM fra"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Fjern eksisterende data"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Fjern eksisterende BOM-artikler før kopiering"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Inkluder arvede"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Inkluder BOM-artikler som er arvet fra maldeler"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Hopp over ugyldige rader"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Aktiver dette alternativet for å hoppe over ugyldige rader"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Kopier erstatningsdeler"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Kopier erstatningsdeler når BOM-elementer dupliseres"
@@ -6732,108 +6732,108 @@ msgstr "Ingen handling spesifisert"
msgid "No matching action found"
msgstr "Ingen samsvarende handling funnet"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Ingen treff funnet for strekkodedata"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Treff funnet for strekkodedata"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Strekkode samsvarer med ekisterende element"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Ingen samsvarende del-data funnet"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Finner ingen matchende leverandørdeler"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Flere samsvarende leverandørdeler funnet"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Fant leverandørdel"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Artikkelen er allerede mottatt"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Flere samsvarende elementer funnet"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Ingen samsvarende element funnet"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Strekkoden samsvarer ikke med eksisterende lagervare"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Lagervare samsvarer ikke med linjeelement"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Utilstrekkelig lagerbeholdning"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Lagervaren er tildelt en salgsordre"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Ikke nok informasjon"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Mer informasjon nødvendig for å motta artikkelen"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Mottok ordreartikkelen"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr "Gir innebygd støtte for strekkoder"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Serienummer"
@@ -8142,7 +8142,7 @@ msgstr "Bildefil ikke funnet"
msgid "part_image tag requires a Part instance"
msgstr "part_image-taggen krever en Part-instans"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "company_image-taggen krever en Company-instans"
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr "Lagerplasseringstyper"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Standard ikom for alle plasseringer som ikke har satt et ikon (valgfritt)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Lagerplassering"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Lagerplasseringer"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Eier"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Velg eier"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Lagervarer kan ikke knyttes direkte mot en strukturell lagerplassering, men kan knyttes mot underplasseringer."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Ekstern"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Dette er en ekstern lagerplassering"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Plasseringstype"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Lagerplasseringstype for denne plasseringen"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "De kan ikke gjøre denne plasseringen strukturell, da noen lagervarer allerede er plassert i den!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Lagervarer kan ikke plasseres i strukturelle plasseringer!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Lagervare kan ikke opprettes for virtuelle deler"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Deltype ('{self.supplier_part.part}') må være {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Antall må være 1 for produkt med et serienummer"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Serienummeret kan ikke angis hvis antall er større enn 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Elementet kan ikke tilhøre seg selv"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Elementet må ha en produksjonsrefereanse om is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Produksjonsreferanse peker ikke til samme del-objekt"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Overordnet lagervare"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Basisdel"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Velg en tilsvarende leverandørdel for denne lagervaren"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Hvor er denne lagervaren plassert?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Inpakningen denne lagervaren er lagret i"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Installert i"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Er denne artikkelen montert i en annen artikkel?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Serienummer for denne artikkelen"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Batchkode for denne lagervaren"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Lagerantall"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Kildeproduksjon"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Produksjon for denne lagervaren"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Brukt av"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Produksjonsordren som brukte denne lagervaren"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Kildeinnkjøpsordre"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Innkjøpsordre for denne lagervaren"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Tildelt Salgsordre"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Utløpsdato for lagervare. Lagerbeholdning vil bli ansett som utløpt etter denne datoen"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Slett når oppbrukt"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Slett lagervaren når beholdningen er oppbrukt"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Innkjøpspris per enhet på kjøpstidspunktet"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Konvertert til del"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Delen er ikke angitt som sporbar"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Antall må være heltall"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Antallet stemmer ikke overens med serienumrene"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Lagervare har blitt tildelt en salgsordre"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Lagervare er montert i en annen artikkel"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Lagervare inneholder andre artikler"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Lagervare har blitt tildelt til en kunde"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Lagervare er for tiden i produksjon"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Serialisert lagerbeholdning kan ikke slås sammen"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Duplisert lagervare"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Lagervarer må referere til samme del"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Lagervarer må referere til samme leverandørdel"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Lagerstatuskoder må være like"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Lagervare kan ikke flyttes fordi den ikke er på lager"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Oppføringsnotater"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Verdi må angis for denne testen"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Vedlegg må lastes opp for denne testen"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Testresultat"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Testens verdi"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Vedlegg til testresultat"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Testnotater"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Overodnet element"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Bruk pakningsstørrelse når du legger til: antall definert er antall pakker"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Angi serienummer for nye artikler"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Leverandørens delnummer"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Til Lagerplassering"
@@ -8805,103 +8805,103 @@ msgstr "Velg lagervarer for å endre status"
msgid "No stock items selected"
msgstr "Ingen lagervarer valgt"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Underplasseringer"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Delen må være salgbar"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Artikkelen er tildelt en salgsordre"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Artikkelen er tildelt en produksjonsordre"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Kunde å tilordne lagervarer"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Valgt firma er ikke en kunde"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Lagervare-tildelignsnotater"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "En liste av lagervarer må oppgis"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Notater om lagersammenslåing"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Tillat forskjellige leverandører"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Tillat lagervarer med forskjellige leverandørdeler å slås sammen"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Tillat forskjellig status"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Tillat lagervarer med forskjellige statuskoder å slås sammen"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Minst to lagervarer må oppgis"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Lagervare primærnøkkel verdi"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Lager transaksjonsnotater"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Salgsordre"
msgid "Return Orders"
msgstr "Returordrer"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Brukernavn"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Fornavn"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Fornavn på brukeren"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Etternavn"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Etternavn på brukeren"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "E-postadressen til brukeren"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personale"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Har denne brukeren personelltillatelser"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superbruker"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Er denne brukeren en superbruker"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Er denne brukerkontoen aktiv"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Din konto er opprettet."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Vennligst bruk funksjonen for å tilbakestille passord for å logge inn"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Velkommen til InvenTree"
diff --git a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po
index 806279a514..684d6678f2 100644
--- a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Nie znaleziono punktu końcowego API"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Dla operacji masowych należy podać wykaz przedmiotów lub filtrów"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Elementy muszą być podane jako lista"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Podano nieprawidłową listę artykułów"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Filtry muszą być dostarczone jako kartka"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Podano niepoprawne filtry"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Wszystkie filtry muszą być używane tylko z true"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Żaden element nie spełnia podanych kryteriów"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Nie dostarczono danych"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Użytkownik nie ma uprawnień do przeglądania tego modelu"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Nie udało się przeliczyć {original} na {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Podano nieprawidłową ilość"
@@ -112,13 +112,13 @@ msgstr "Wprowadź dane"
msgid "Invalid decimal value"
msgstr "Niepoprawna wartość dziesiętna"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Uwagi"
@@ -171,35 +171,35 @@ msgstr "Usuń znaczniki HTML z tej wartości"
msgid "Data contains prohibited markdown content"
msgstr "Dane zawierają zabronione treści znacznika"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Błąd połączenia"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Serwer odpowiedział z nieprawidłowym kodem statusu"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Wystąpił wyjątek"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Serwer odpowiedział z nieprawidłową wartością Content-Length"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Rozmiar obrazu jest zbyt duży"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Przekroczono maksymalny rozmiar pobieranego obrazu"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Zdalny serwer zwrócił pustą odpowiedź"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Podany adres URL nie jest poprawnym plikiem obrazu"
@@ -207,11 +207,11 @@ msgstr "Podany adres URL nie jest poprawnym plikiem obrazu"
msgid "Log in to the app"
msgstr "Logowanie do aplikacji"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Adres E-Mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Musisz włączyć uwierzytelnianie dwuskładnikowe przed wykonaniem czegokolwiek innego."
@@ -255,133 +255,133 @@ msgstr "Odniesienie musi być zgodne z wymaganym wzorem"
msgid "Reference number is too large"
msgstr "Numer odniesienia jest zbyt duży"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Błędny wybór"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nazwa"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Opis"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Opis (opcjonalny)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Ścieżka"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Duplikaty nazw nie mogą istnieć pod tym samym rodzicem"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Notatki Markdown (opcjonalne)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Dane kodu kreskowego"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Dane kodu kreskowego stron trzecich"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hasz kodu kreskowego"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Unikalny hasz danych kodu kreskowego"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Znaleziono istniejący kod kreskowy"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Niepowodzenie zadania"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Zadanie pracownika w tle '{f}' nie powiodło się po próbach {n}"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Błąd serwera"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Błąd został zapisany w logach serwera."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Obraz"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Numer musi być prawidłowy"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Waluta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Wybierz walutę z dostępnych opcji"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Nieprawidłowa wartość"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Obrazek zewnętrzny"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "Adres URL zdalnego pliku obrazu"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Pobieranie obrazów ze zdalnego URL nie jest włączone"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Nie udało się pobrać obrazu ze zdalnego adresu URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Niewłaściwa jednostka fizyczna"
msgid "Not a valid currency code"
msgstr "Nieprawidłowy kod waluty"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Status zamówienia"
@@ -562,21 +562,21 @@ msgstr "Status zamówienia"
msgid "Parent Build"
msgstr "Budowa nadrzędna"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Obejmuje warianty"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Obejmuje warianty"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Obejmuje warianty"
msgid "Part"
msgstr "Komponent"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategoria"
@@ -666,80 +666,80 @@ msgstr "Maksymalna data"
msgid "Exclude Tree"
msgstr "Wyklucz drzewo"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Kompilacja musi zostać anulowana, zanim będzie mogła zostać usunięta"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Materiał eksploatacyjny"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opcjonalne"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Złożenie"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Śledzony"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testowalne"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Zaległe zamówienie"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Przydzielono"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Dostępne"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "W Zamówieniu"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Zlecenie Budowy"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Lokalizacja"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Wyjście"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "Data docelowa musi być po dacie rozpoczęcia"
msgid "Build Order Reference"
msgstr "Odwołanie do zamówienia wykonania"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,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:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Lokalizacja źródła"
@@ -857,17 +857,17 @@ msgstr "Status budowania"
msgid "Build status code"
msgstr "Kod statusu budowania"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Kod partii"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Kod partii dla wyjścia budowy"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Data utworzenia"
@@ -887,7 +887,7 @@ msgstr "Docelowy termin zakończenia"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Docelowa data zakończenia kompilacji. Po tej dacie kompilacja będzie zaległa."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Data zakończenia"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Użytkownik, który wydał to zamówienie"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Odpowiedzialny"
@@ -913,12 +913,12 @@ msgstr "Odpowiedzialny"
msgid "User or group responsible for this build order"
msgstr "Użytkownik lub grupa odpowiedzialna za te zlecenie produkcji"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Link Zewnętrzny"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link do zewnętrznego adresu URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Priorytet tego zamówienia produkcji"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Kod projektu"
@@ -960,7 +960,7 @@ msgstr "Kolejność kompilacji {build} została zakończona"
msgid "A build order has been completed"
msgstr "Kolejność kompilacji została zakończona"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Należy podać numery seryjne dla lokalizowania części"
@@ -976,23 +976,23 @@ msgstr "Budowanie wyjścia jest już ukończone"
msgid "Build output does not match Build Order"
msgstr "Skompilowane dane wyjściowe nie pasują do kolejności kompilacji"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Ilość musi być większa niż zero"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Ilość nie może być większa niż ilość wyjściowa"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Wyjście budowy {serial} nie przeszło wszystkich testów"
@@ -1001,18 +1001,18 @@ msgstr "Wyjście budowy {serial} nie przeszło wszystkich testów"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Zbuduj obiekt"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Zbuduj obiekt"
msgid "Quantity"
msgstr "Ilość"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Wymagana ilość dla zlecenia produkcji"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Element kompilacji musi określać dane wyjściowe kompilacji, ponieważ część główna jest oznaczona jako możliwa do śledzenia"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Wybrana pozycja magazynowa nie pasuje do pozycji w zestawieniu BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Ilość musi wynosić 1 dla serializowanych zasobów"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Przydzielona ilość ({q}) nie może przekraczać dostępnej ilości zapasów magazynowych ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Pozycja magazynowa jest nadmiernie przydzielona"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Alokowana ilość musi być większa niż zero"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Ilość musi wynosić 1 dla serializowanych zasobów"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Wybrana pozycja magazynowa nie pasuje do pozycji w zestawieniu BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Przydzielona ilość przekracza dostępną ilość zapasów"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Element magazynowy"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Lokalizacja magazynowania przedmiotu"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Ilość zapasów do przydzielenia do produkcji"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Zainstaluj do"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Docelowa lokalizacja magazynowa przedmiotu"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Poziom budowania"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nazwa komponentu"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Numer seryjny"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Automatycznie przydzielaj numery seryjne"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Automatycznie przydzielaj wymagane elementy z pasującymi numerami seryjnymi"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Poniższe numery seryjne już istnieją lub są nieprawidłowe"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Odrzuć przydziały"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Zaakceptuj niekompletną alokację"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Usuń produkcje, które nie zostały zakończone"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Niedozwolone"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Zaakceptuj jako zużyte przez zlecenie produkcji"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Nadmierny przydział zasobów"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Zaakceptuj nieprzydzielone"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Zaakceptuj, że przedmioty magazynowe nie zostały w pełni przypisane do tego zlecenia budowy"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Wymagany stan nie został w pełni przypisany"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Akceptuj niekompletne"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Towar musi znajdować się w magazynie"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Dostępna ilość ({q}) przekroczona"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
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:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Wyklucz lokalizację"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Wyklucz produkty magazynowe z wybranej lokalizacji"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Magazyn wymienny"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Towary magazynowe w wielu lokalizacjach mogą być stosowane zamiennie"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Zastępczy magazyn"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Przedmiot opcjonalny"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Przydziel opcjonalne elementy BOM do zbudowania zamówienia"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Odniesienie BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID części BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Nazwa części BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Wersja"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Część dostawcy"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Ilość zarezerwowana"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Możliwość śledzenia"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Zezwalaj na warianty"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Element BOM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "W produkcji"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Zew. zasoby magazynowe"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Dostępna ilość"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Dostępny magazyn zastępczy"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Jest plikiem"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr "Brak wtyczki"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Zaktualizowany"
@@ -1558,7 +1554,7 @@ msgstr "Opis projektu"
msgid "User or group responsible for this project"
msgstr "Użytkownik lub grupa odpowiedzialna za to zamówienie"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Klucz ustawień"
@@ -1590,550 +1586,550 @@ msgstr "Wartość nie zgadza się z kontrolą poprawności"
msgid "Key string must be unique"
msgstr "Ciąg musi być unikatowy"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Użytkownik"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Cena"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Cena jednostkowa po określonej ilości"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Punkt końcowy"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktywny"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token dostępu"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Sekret"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Współdzielony sekret dla HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Id wiadomości"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Unikalny identyfikator dla tej wiadomości"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Host"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Host, od którego otrzymano tę wiadomość"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Nagłówek"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Nagłówek tej wiadomości"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Zawartość"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Treść tej wiadomości"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Opracowany na"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Czy prace nad tą wiadomością zostały zakończone?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Tytuł"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Łącze"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Opublikowano"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Podsumowanie"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Czytaj"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Czy ta wiadomość była przeczytana?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Plik obrazu"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Jednostka Niestandardowa"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Symbol jednostki musi być unikalny"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Nazwa jednostki musi być prawidłowym identyfikatorem"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nazwa jednostki"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Opcjonalny symbol jednostki"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definicja"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definicja jednostki"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Załącznik"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Brak pliku"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Brak zewnętrznego odnośnika"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Typ modelu"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Docelowy typ modelu dla obrazu"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Wybierz plik do załączenia"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Komentarz"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Komentarz do załącznika"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Data dodania"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Data przesłania pliku"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Rozmiar pliku"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Rozmiar pliku w bajtach"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Wartość"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etykieta"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Kolor"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Model musi być wybrany"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Klucz musi być wybrany"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Zablokowany"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Utworzony"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Ostatnia aktualizacja"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Jednostki"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Aktywne"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Szablon"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Dane"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Wartość parametru"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Wartość parametru"
msgid "Note"
msgstr "Uwaga"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Wynik"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Doręczono"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Klucz"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} anulowany"
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Nadpisz"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Jest uruchomiony"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Oczekujce zadania"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Zaplanowane zadania"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Zadania zakończone błędem"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID zadania"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Unikalny identyfikator zadania"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Blokada"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Czas blokady"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nazwa zadania"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funkcja"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nazwa funkcji"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumenty"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumenty zadania"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nazwa pliku"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Typ modelu"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Użytkownik nie ma uprawnień do tworzenia lub edytowania załączników dla tego modelu"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lista wyboru jest zablokowana"
@@ -2445,1128 +2449,1132 @@ msgstr "Lista wyboru jest zablokowana"
msgid "No group"
msgstr "Brak grupy"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Adres URL witryny jest zablokowany przez konfigurację"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Wymagane ponowne uruchomienie"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Zmieniono ustawienie, które wymaga restartu serwera"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Oczekujące migracje"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Liczba oczekujących migracji bazy danych"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Aktywne kody ostrzeżeń"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "ID instancji"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Unikalny identyfikator dla tej instancji InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nazwa instancji serwera"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Użyj nazwy instancji"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nazwa firmy"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Wewnętrzna nazwa firmy"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Bazowy URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Bazowy adres URL dla instancji serwera"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Domyślna waluta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Interwał aktualizacji waluty"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Jak często aktualizować kursy wymiany walut (ustaw zero aby wyłączyć)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dni"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Wtyczka aktualizacji waluty"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Pobierz z adresu URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Zezwól na pobieranie zewnętrznych obrazów i plików z zewnętrznego URL"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Limit rozmiaru pobierania"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Ścisła weryfikacja adresu URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Wymagaj specyfikacji schematu podczas sprawdzania poprawności adresów URL"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Częstotliwość sprawdzania aktualizacji"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Jak często aktualizować kursy wymiany walut (ustaw zero aby wyłączyć)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatyczna kopia zapasowa"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Włącz automatyczną kopię zapasową bazy danych i plików multimedialnych"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Interwał automatycznego tworzenia kopii zapasowych"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Określ liczbę dni między zdarzeniami automatycznej kopii zapasowej"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Interwał usuwania zadań"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Obsługa kodu kreskowego"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Wyrażenie regularne IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Zezwól na powtarzający się IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Zezwól na edycję IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Skopiuj BOM komponentu"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponent"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Możliwość zakupu"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Części są domyślnie z możliwością zakupu"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Możliwość sprzedaży"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Części są domyślnie z możliwością sprzedaży"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Części są domyślnie z możliwością śledzenia"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Wirtualny"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Części są domyślnie wirtualne"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Pokaż powiązane części"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Użyj cennika dostawcy"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Nadpisanie historii zakupów"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Ceny wewnętrzne"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Włącz drukowanie etykiet"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Włącz drukowanie etykiet z interfejsu WWW"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI etykiety"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Włącz raporty"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Tryb Debugowania"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Rozmiar strony"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Domyślna wielkość strony dla raportów PDF"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Przekonwertuj walutę"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Konwertuj wartość przedmiotu na walutę bazową podczas otrzymywania zapasów"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Automatycznie wypełniaj zlecenia zakupu"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Automatycznie oznacz zlecenia jako zakończone po odebraniu wszystkich pozycji"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Włącz opcję zapomnianego hasła"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Włącz funkcję zapomnianego hasła na stronach logowania"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Włącz rejestrację"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Włącz samodzielną rejestrację dla użytkowników na stronach logowania"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Włącz SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Włącz SSO na stronach logowania"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Włącz rejestrację SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Włącz samodzielną rejestrację przez SSO dla użytkowników na stronach logowania"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Włącz synchronizację grupy SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Włącz synchronizację grup InvenTree z grupami dostarczonymi przez IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Adres e-mail jest wymagany"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Autouzupełnianie użytkowników SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Automatycznie wypełnij dane użytkownika z danych konta SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "E-mail dwa razy"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich adres e-mail"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Hasło dwukrotnie"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich hasło"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupuj przy rejestracji"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Wymuś MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Użytkownicy muszą używać zabezpieczeń wieloskładnikowych."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Sprawdź wtyczki przy starcie"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Sprawdź dostępność aktualizacji wtyczek"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Włącz okresowe sprawdzanie aktualizacji zainstalowanych wtyczek"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Włącz integrację URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Włącz wtyczki, aby dodać ścieżki URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Włącz integrację z aplikacją"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Włącz wtyczki, aby dodać aplikacje"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Włącz wtyczki, aby uruchamiać zaplanowane zadania"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Włącz kody projektów"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Włącz kody projektów do śledzenia projektów"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Włącz historię zapasów"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Włącz funkcjonalność dla zapisywania historycznych poziomów zapasów i wartości"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "Komponent jest aktywny"
msgid "Manufacturer is Active"
msgstr "Producent jest aktywny"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Producent"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Firma"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr "Numer telefonu kontaktowego"
msgid "Contact email address"
msgstr "Kontaktowy adres e-mail"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakt"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adres"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Miasto/Region"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Kod pocztowy miasto/region"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Stan/Województwo"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Stan lub województwo"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Kraj"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Kraj"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notatki przewozowe kuriera"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notatki dla kuriera"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Wewnętrzne notatki przewozowe"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Notatki wysyłkowe do użytku wewnętrznego"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Komponent producenta"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Część bazowa"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Wybierz część"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Wybierz producenta"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Numer producenta komponentu"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Dostawca"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Wybierz dostawcę"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "koszt podstawowy"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Opakowanie"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Opakowanie części"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Ilość w opakowaniu"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "wielokrotność"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Zamów wiele"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Dostępność zaktualizowana"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Domyślna waluta używana dla tego dostawcy"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Na stanie"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Ważny"
@@ -4530,7 +4530,7 @@ msgstr "Liczba kopii do wydrukowania dla każdej etykiety"
msgid "Connected"
msgstr "Połączono"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Nieznany"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Numer zamówienia"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Utworzony przez"
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr "Posiada ceny"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Zamówienie"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Komponent wewnętrzny"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Zamówienie oczekujące"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Zakończone"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Zlecenie zakupu"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Zlecenie zakupu"
msgid "Sales Order"
msgstr "Zamówienie zakupu"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Cena całkowita"
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link do zewnętrznej witryny"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Data docelowa"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Data wydania"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Data wystawienia zamówienia"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Użytkownik lub grupa odpowiedzialna za to zamówienie"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Odniesienie zamówienia"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Status zamówienia zakupu"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "odebrane przez"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Przeznaczenie"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Pozycja nie pasuje do zlecenia zakupu"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Wartość musi być liczbą dodatnią"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Klient"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Data wysyłki"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "wysłane przez"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Ilość elementów"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Odebrane"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Cena zakupu"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Cena zakupu jednostkowego"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Sprawdzone przez"
msgid "User who checked this shipment"
msgstr "Użytkownik, który sprawdził tę wysyłkę"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Przesyłka"
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Zarezerwowana ilość nie może przekraczać ilości na stanie"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Alokowana ilość musi być większa niż zero"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Zamówienie nie może zostać anulowane"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Zlecenie zakupu musi być określone"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Dostawca musi być zgodny ze zleceniem zakupu"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Zlecenie zakupu musi być zgodne z dostawcą"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Data ważności"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Kod kreskowy"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Kategoria komponentu"
@@ -5656,7 +5660,7 @@ msgstr "Kategoria komponentu"
msgid "Part Categories"
msgstr "Kategorie części"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Domyślna lokalizacja"
@@ -5664,7 +5668,7 @@ msgstr "Domyślna lokalizacja"
msgid "Default location for parts in this category"
msgstr "Domyślna lokalizacja dla komponentów w tej kategorii"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr "Domyślne słowa kluczowe"
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Wartość domyślna"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Części"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nazwa komponentu"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Czy szablon"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Czy ta część stanowi szablon części?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Czy ta część jest wariantem innej części?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Wariant"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Słowa kluczowe"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Wersja"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Domyślne wygasanie"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimalny stan magazynowy"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Czy ten komponent może być zbudowany z innych komponentów?"
-#: part/models.py:1297
+#: part/models.py:1278
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:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Czy ta część jest aktywna?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
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:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Tworzenie użytkownika"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Sprzedaj wiele"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Data"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Nazwa testu"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Testowy opis"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Wprowadź opis do tego testu"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Wymagane"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Wymaga wartości"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Wymaga załącznika"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Wybierz część nadrzędną"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Podczęść"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Ten element BOM jest opcjonalny"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Notatki pozycji BOM"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Suma kontrolna"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Zatwierdzone"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Część zastępcza"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Część 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Część 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Wybierz powiązaną część"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Towary"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Dostawcy"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Duplikuj część"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Usuń istniejące dane"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Pomiń nieprawidłowe wiersze"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Włącz tę opcję, aby pominąć nieprawidłowe wiersze"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "Nie określono działania"
msgid "No matching action found"
msgstr "Nie znaleziono pasującej akcji"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Nie znaleziono wyników dla danych kodu kreskowego"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Znaleziono wyniki dla danych kodu kreskowego"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Kod kreskowy pasuje do istniejącego elementu"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Kod kreskowy nie pasuje do istniejących pozycji magazynowych"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Dalsze informacje wymagane do odbioru pozycji"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Otrzymana pozycja zlecenia zakupu"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr "Razem"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Numer Seryjny"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Lokacje stanu magazynowego"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Właściciel"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Wybierz właściciela"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Nadrzędny towar"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Część podstawowa"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Wybierz pasującą część dostawcy dla tego towaru"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Zainstalowane w"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Ilość w magazynie"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Wyszukaj zlecenie zakupu"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Zlecenie zakupu dla tego towaru"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Usuń po wyczerpaniu"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Ilość musi być liczbą całkowitą"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Notatki do wpisu"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Należy podać wartość dla tego testu"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Wynik testu"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Element nadrzędny"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Podlokalizacje"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Część musi być dostępna do sprzedaży"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Czy to konto użytkownika jest aktywne"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Twoje konto zostało utworzone."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Zresetuj hasło"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Witamy w InvenTree"
diff --git a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po
index 55b18c4787..24fbd5e8e4 100644
--- a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Portuguese\n"
"Language: pt_PT\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API endpoint não encontrado"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Usuário não tem permissão para ver este modelo"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Não foi possível converter {original} para {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Quantidade fornecida inválida"
@@ -112,13 +112,13 @@ msgstr "Insira uma Data"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Anotações"
@@ -171,35 +171,35 @@ msgstr "Remova as \"tags\" HTML deste valor"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Erro de conexão"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "O servidor respondeu com código estado inválido"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Ocorreu uma exceção"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "O servidor respondeu com valor inválido do tamanho de conteúdo"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Tamanho da imagem muito grande"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "O download da imagem excedeu o tamanho máximo"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "O servidor remoto retornou resposta vazia"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "A URL fornecida não é um arquivo de imagem válido"
@@ -207,11 +207,11 @@ msgstr "A URL fornecida não é um arquivo de imagem válido"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Email"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr "A referência deve corresponder ao padrão exigido"
msgid "Reference number is too large"
msgstr "O número de referência é muito grande"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Escolha inválida"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nome"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Descrição"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Descrição (opcional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Caminho"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Nomes duplicados não podem existir sob o mesmo parental"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Notas Markdown (opcional)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Dados de código de barras"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Dados de código de barras de terceiros"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash de código de barras"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hash exclusivo de dados de código de barras"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Código de barras existente encontrado"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Erro de servidor"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Log de erro salvo pelo servidor."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Imagem"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Preicsa ser um numero valido"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Moeda"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Selecione a Moeda nas opções disponíveis"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Valor inválido"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Imagens Remota"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL do arquivo de imagem remoto"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Baixar imagens de URL remota não está habilitado"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Unidade física inválida"
msgid "Not a valid currency code"
msgstr "Não é um código de moeda válido"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Situação do pedido"
@@ -562,21 +562,21 @@ msgstr "Situação do pedido"
msgid "Parent Build"
msgstr "Produção Progenitor"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Peça"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Categoria"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Produção deve ser cancelada antes de ser deletada"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Consumível"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opcional"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Montagem"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Monitorado"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Alocado"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Disponível"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "No pedido"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Ordem de Produção"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Local"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Referência do pedido de produção"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referência do pedido de venda"
msgid "SalesOrder to which this build is allocated"
msgstr "Pedido de Venda para qual esta produção está alocada"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Local de Origem"
@@ -857,17 +857,17 @@ msgstr "Progresso da produção"
msgid "Build status code"
msgstr "Código de situação da produção"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Código de Lote"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Código do lote para esta saída de produção"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Criado em"
@@ -887,7 +887,7 @@ msgstr "Data alvo final"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Data alvo para finalização de produção. Estará atrasado a partir deste dia."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Data de conclusão"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Usuário que emitiu este pedido de produção"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Responsável"
@@ -913,12 +913,12 @@ msgstr "Responsável"
msgid "User or group responsible for this build order"
msgstr "Usuário ou grupo responsável para este pedido de produção"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Link Externo"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link para URL externa"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Prioridade deste pedido de produção"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Código do projeto"
@@ -960,7 +960,7 @@ msgstr "O Pedido de produção {build} foi concluído!"
msgid "A build order has been completed"
msgstr "Um pedido de produção foi concluído"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Números de série devem ser fornecidos para peças rastreáveis"
@@ -976,23 +976,23 @@ msgstr "Saída de produção já completada"
msgid "Build output does not match Build Order"
msgstr "Saída da produção não corresponde ao Pedido de Produção"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Quantidade deve ser maior que zero"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Quantidade não pode ser maior do que a quantidade de saída"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "O item de produção {serial} não passou todos os testes necessários"
@@ -1001,18 +1001,18 @@ msgstr "O item de produção {serial} não passou todos os testes necessários"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Item da linha de Produção"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Objeto de produção"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Objeto de produção"
msgid "Quantity"
msgstr "Quantidade"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Quantidade necessária para o pedido de produção"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Item de produção deve especificar a saída, pois peças mestres estão marcadas como rastreáveis"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Item estoque selecionado não coincide com linha da LDM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Quantidade deve ser 1 para estoque serializado"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Quantidade alocada ({q}) não deve exceder a quantidade disponível em estoque ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "O item do estoque está sobre-alocado"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Quantidade alocada deve ser maior que zero"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Quantidade deve ser 1 para estoque serializado"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Item estoque selecionado não coincide com linha da LDM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Item de estoque"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Origem do item em estoque"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Quantidade do estoque para alocar à produção"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Instalar em"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Destino do Item do Estoque"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nome da Peça"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Saída da Produção"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Saída de produção não coincide com a produção progenitora"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Peça de saída não coincide com a peça da ordem de produção"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Esta saída de produção já foi concluída"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "A saída de produção não está completamente alocada"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Entre a quantidade da saída de produção"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Quantidade inteira necessária para peças rastreáveis"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantidade inteira necessária, pois a lista de materiais contém peças rastreáveis"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Números de Série"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Digite os números de série para saídas de produção"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Local de estoque para a produção"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Alocar Números de Série Automaticamente"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Os seguintes números de série já existem ou são inválidos"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Uma lista de saídas de produção deve ser fornecida"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Local de estoque para saídas recicladas"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Descartar alocações"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Descartar quaisquer alocações de estoque para saídas sucateadas"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Motivo para sucatear saída(s) de produção"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Local para saídas de produção concluídas"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Aceitar Alocação Incompleta"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Concluir saídas se o estoque não tiver sido totalmente alocado"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Consumir Estoque Alocado"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Consumir qualquer estoque que já tenha sido alocado para esta produção"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Remover Saídas Incompletas"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Excluir quaisquer saídas de produção que não tenham sido completadas"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Não permitido"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Aceitar conforme consumido por esta ordem de produção"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Desatribua antes de completar este pedido de produção"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Estoque sobrealocado"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Como deseja manejar itens de estoque extras atribuídos ao pedido de produção"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Alguns itens de estoque foram sobrealocados"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Aceitar não alocados"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Aceitar que os itens de estoque não foram totalmente alocados para esta produção"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Estoque obrigatório não foi totalmente alocado"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Aceitar Incompleto"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Aceitar que o número requerido de saídas de produção não foi concluído"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Quantidade de produção requerida não foi concluída"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Pedido de produção tem saídas incompletas"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Linha de produção"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Saída da Produção"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Saída de produção deve indicar a mesma produção"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Item da linha de produção"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bin_item.part deve indicar a mesma peça do pedido de produção"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Item deve estar em estoque"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantidade disponível ({q}) excedida"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Saída de produção deve ser definida para alocação de peças rastreadas"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Saída de produção deve ser definida para alocação de peças não rastreadas"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Alocação do Item precisa ser fornecida"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Local de estoque onde peças serão extraídas (deixar em branco para qualquer local)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Local não incluso"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Não incluir itens de estoque deste local"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Estoque permutável"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Itens de estoque em múltiplos locais pode ser permutável"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Substituir Estoque"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Permitir alocação de peças substitutas"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Itens opcionais"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Alocar itens LDM opcionais para o pedido de produção"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Falha ao iniciar tarefa de auto-alocação"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Fornecedor da Peça"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Quantidade Alocada"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Rastreável"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Permitir variações"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Item LDM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Em Produção"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Estoque Disponível"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Pedido de produção vencido"
msgid "Build order {bo} is now overdue"
msgstr "Pedido de produção {bo} está atrasada"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "É uma Ligação"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "É um arquivo"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "O Utilizador não tem permissão para remover este anexo"
@@ -1530,7 +1522,11 @@ msgstr "Nenhum código de moeda válido foi fornecido"
msgid "No plugin"
msgstr "Sem extensão"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Atualizado"
@@ -1558,7 +1554,7 @@ msgstr "Descrição do projeto"
msgid "User or group responsible for this project"
msgstr "Usuário ou grupo responsável por este projeto"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr "A frase senha deve ser diferenciada"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Usuario"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Quantidade de Parcelamentos"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Preço"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Preço unitário na quantidade especificada"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Ponto final"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Ponto final em qual o gancho web foi recebido"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Nome para este webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Ativo"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Este gancho web está ativo"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token de acesso"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Segredo"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Segredo compartilhado para HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID da Mensagem"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Identificador exclusivo desta mensagem"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Servidor"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Servidor do qual esta mensagem foi recebida"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Cabeçalho"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Cabeçalho da mensagem"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Corpo"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Corpo da mensagem"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Ponto do qual esta mensagem foi recebida"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Trabalhado em"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "O trabalho desta mensagem foi concluído?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Título"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Ligação"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Publicado"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Resumo"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Lida"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Esta notícia do item foi lida?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Arquivo de imagem"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Nome da unidade deve ser um identificador válido"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nome da unidade"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Símbolo"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Símbolo de unidade opcional"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definição"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definição de unidade"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Anexo"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Arquivo ausente"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Link externo não encontrado"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Selecione arquivo para anexar"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Comentario"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Valor"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Criado"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Última atualização"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Modelo de parâmetro"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Parâmetros da caixa de seleção não podem ter unidades"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Os parâmetros da caixa de seleção não podem ter escolhas"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Escolhas devem ser únicas"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Nome do modelo de parâmetro deve ser único"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Nome do Parâmetro"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Unidades"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Unidades físicas para este parâmetro"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Descrição do Parâmetro"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Caixa de seleção"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Este parâmetro é uma caixa de seleção?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Escolhas"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Opções válidas para este parâmetro (separadas por vírgulas)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Habilitado"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Escolha inválida para valor do parâmetro"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Modelo"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Dados"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Valor do Parâmetro"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Valor do Parâmetro"
msgid "Note"
msgstr "Anotação"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Campo opcional de notas"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Contexto"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultado"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Chave"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} cancelado"
msgid "A order that is assigned to you was canceled"
msgstr "Um pedido atribuído a você foi cancelado"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Itens Recebidos"
@@ -2351,93 +2347,101 @@ msgstr "Os itens de um pedido de compra foram recebidos"
msgid "Items have been received against a return order"
msgstr "Os itens de um pedido de devolução foram recebidos"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Executando"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Tarefas Pendentes"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Tarefas Agendadas"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Tarefas com Falhas"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID da Tarefa"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "ID Único da Tarefa"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Bloquear"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Tempo de bloqueio"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nome da tarefa"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Função"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nome da função"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumentos"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumentos da tarefa"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Argumentos de Palavra-chave"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Argumentos Palavra-chave da Tarefa"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nome do arquivo"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Nenhum grupo"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "URL do site está bloqueada por configuração"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Reinicialização necessária"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Uma configuração que requer uma reinicialização do servidor foi alterada"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migrações pendentes"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Número de migrações pendentes na base de dados"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nome da Instância do Servidor"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Descritor de frases para a instância do servidor"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Usar nome da instância"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Usar o nome da instância na barra de título"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Restringir a exibição 'sobre'"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Mostrar 'sobre' modal apenas para superusuários"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nome da empresa"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Nome interno da Empresa"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL de Base"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL Base da instância do servidor"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Moeda Padrão"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Selecione a moeda base para cálculos de preços"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Moedas suportadas"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Lista de códigos de moeda suportados"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Intervalo de Atualização da Moeda"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Com que frequência atualizar as taxas de câmbio (defina como zero para desativar)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dias"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Extensão de Atualização de Moeda"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Extensão de Atualização de Moeda a utilizar"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Baixar do URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Permitir baixar imagens remotas e arquivos de URLs externos"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Limite de tamanho para baixar"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maior tamanho de imagem remota baixada permitida"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Usuário-agente utilizado para baixar da URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Permitir a substituição de imagens e arquivos usados baixados por usuário-agente (deixar em branco por padrão)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Validação rigorosa de URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Exigir especificação de esquema ao validar URLs"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Atualizar Intervalo de Verificação"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Frequência para verificar atualizações (defina como zero para desativar)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Cópia de Segurança Automática"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Ativar cópia de segurança automática do banco de dados e arquivos de mídia"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervalo de Backup Automático"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Especificar o número de dia entre as cópias de segurança"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Intervalo para Excluir da Tarefa"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Os resultados da tarefa no plano de fundo serão excluídos após um número especificado de dias"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Intervalo para Excluir do Registro de Erro"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Registros de erros serão excluídos após um número especificado de dias"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Intervalo para Excluir de Notificação"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Notificações de usuários será excluído após um número especificado de dias"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Suporte aos códigos de barras"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Ativar suporte a leitor de código de barras na interface web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Atraso na entrada de código de barras"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Tempo de atraso de processamento de entrada de barras"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Suporte a código de barras via Câmera"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Permitir escanear código de barras por câmera pelo navegador"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revisões de peças"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Habilitar campo de revisão para a Peça"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Permitir a exclusão da Montagem"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Permitir a remoção de peças usadas em uma montagem"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Regex IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Padrão de expressão regular adequado para Peça IPN"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Permitir Duplicação IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Permitir que várias peças compartilhem o mesmo IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Permitir Edição IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Permitir trocar o valor do IPN enquanto se edita a peça"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Copiar dados da LDM da Peça"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Copiar dados da LDM por padrão quando duplicar a peça"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Copiar Dados de Parâmetro da Peça"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copiar dados de parâmetros por padrão quando duplicar uma peça"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Copiar Dados Teste da Peça"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Copiar dados de teste por padrão quando duplicar a peça"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Copiar Parâmetros dos Modelos de Categoria"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Copiar parâmetros do modelo de categoria quando criar uma peça"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Peças são modelos por padrão"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Peças podem ser montadas a partir de outros componentes por padrão"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Componente"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Peças podem ser usadas como sub-componentes por padrão"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Comprável"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Peças são compráveis por padrão"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Vendível"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Peças vão vendíveis por padrão"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Peças vão rastreáveis por padrão"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtual"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Peças são virtuais por padrão"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Mostra peças relacionadas"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Mostrar peças relacionadas para uma peça"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Dados Iniciais de Estoque"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permitir Criação de estoque inicial quando adicional uma nova peça"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Dados Iniciais de Fornecedor"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Permitir criação de dados iniciais de fornecedor quando adicionar uma nova peça"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Formato de Exibição do Nome da Peça"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formato para exibir o nome da peça"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Ícone de Categoria de Peça Padrão"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Ícone padrão de categoria de peça (vazio significa sem ícone)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Mínimo de Casas Decimais do Preço"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Mínimo número de casas decimais a exibir quando renderizar dados de preços"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Máximo Casas Decimais de Preço"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Número máximo de casas decimais a exibir quando renderizar dados de preços"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Usar Preços do Fornecedor"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Incluir quebras de preço do fornecedor nos cálculos de preços globais"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Sobrescrever histórico de compra"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Histórico do pedido de compra substitui os intervalos dos preços do fornecedor"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Usar Preços do Item em Estoque"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Usar preço inserido manualmente no estoque para cálculos de valores"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Idade do preço do Item em Estoque"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Não incluir itens em estoque mais velhos que este número de dias no cálculo de preços"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Usar Preço Variável"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Incluir preços variáveis nos cálculos de valores gerais"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Apenas Ativar Variáveis"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Apenas usar peças variáveis ativas para calcular preço variáveis"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervalo de Reconstrução de Preços"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Número de dias antes da atualização automática dos preços das peças"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Preços Internos"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Habilitar preços internos para peças"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Sobrepor Valor Interno"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Se disponível, preços internos sobrepõe variação de cálculos de preço"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Ativar impressão de etiquetas"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Ativar impressão de etiqueta pela interface da internet"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI da Imagem na Etiqueta"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Resolução de DPI quando gerar arquivo de imagens para fornecer à extensão de impressão de etiquetas"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Habilitar Relatórios"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Ativar geração de relatórios"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Modo de depuração"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Gerar relatórios em modo de depuração (saída HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Relatório de erros"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Registro de erros que ocorrem ao gerar relatórios"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Tamanho da página"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Tamanho padrão da página PDF para relatórios"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Forçar Unidades de Parâmetro"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Se as unidades são fornecidas, os valores do parâmetro devem corresponder às unidades especificadas"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Seriais Únicos Globais"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Números de série para itens de estoque devem ser globalmente únicos"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Excluir Estoque Esgotado"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Determina o comportamento padrão quando um item de estoque é esgotado"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Modelo de Código de Lote"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Modelo para gerar códigos de lote padrão para itens de estoque"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Validade do Estoque"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Ativar função de validade de estoque"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Vender estoque expirado"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Permitir venda de estoque expirado"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Tempo de Estoque Inativo"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Número de dias em que os itens em estoque são considerados obsoleto antes de vencer"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Produzir Estoque Vencido"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Permitir produção com estoque vencido"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Controle de propriedade do estoque"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Ativar controle de propriedade sobre locais e itens de estoque"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Ícone padrão do local de estoque"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Ícone padrão de local de estoque (vazio significa sem ícone)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Mostrar Itens de Estoque Instalados"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Exibir itens de estoque instalados nas tabelas de estoque"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Verificar BOM ao instalar itens"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Itens de estoque instalados devem existir na BOM para a peça parente"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Permitir Transferência Fora do Estoque"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Permitir que os itens que não estão em estoque sejam transferidos entre locais de estoque"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Produção"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Produção"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Requer Proprietário Responsável"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Um proprietário responsável deve ser atribuído a cada ordem"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Bloquear até os Testes serem Aprovados"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Impedir que as saídas da produção sejam concluídas até que todos os testes sejam aprovados"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Ativar Pedidos de Devolução"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Ativar funcionalidade de pedido de retorno na interface do usuário"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Devolução"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Editar os Pedidos de Devolução Concluídos"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Permitir a edição de pedidos de devolução após serem enviados ou concluídos"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Venda"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Venda"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Envio Padrão de Pedidos de Venda"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Habilitar criação de envio padrão com Pedidos de Vendas"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Editar os Pedidos de Vendas concluídos"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Permitir a edição de pedidos de vendas após serem enviados ou concluídos"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Compras"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Compra"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Editar Pedidos de Compra Concluídos"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Permitir a edição de pedidos de compras após serem enviados ou concluídos"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Autocompletar Pedidos de Compra"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Marcar automaticamente os pedidos de compra como concluídos quando todos os itens de linha forem recebidos"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Habitar esquecer senha"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Habilitar a função \"Esqueci minha senha\" nas páginas de acesso"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Habilitar cadastro"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Ativar auto-registro para usuários na página de entrada"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Ativar SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Ativar SSO na página de acesso"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Ativar registro SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Ativar auto-registro por SSO para usuários na página de entrada"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email obrigatório"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Exigir do usuário o e-mail no cadastro"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Auto-preencher usuários SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Preencher automaticamente os detalhes do usuário a partir de dados da conta SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Enviar email duplo"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "No registro pedir aos usuários duas vezes pelo email"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Senha duas vezes"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "No registro pedir aos usuários duas vezes pela senha"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Domínios permitidos"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Restringir registros a certos domínios (separados por vírgula, começando com @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupo no cadastro"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Forçar AMF"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Os usuários devem usar uma segurança multifator."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Checar extensões no início"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Checar que todas as extensões instaladas no início — ativar em ambientes de contêineres"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Verificar por atualizações de plugin"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Habilitar verificações periódicas de atualizações para plugins instalados"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Ativar integração URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Ativar extensão para adicionar rotas URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Ativar integração de navegação"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Ativar extensões para integrar à navegação"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Ativa integração com aplicativo"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Ativar extensões para adicionar aplicativos"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Ativar integração do calendário"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Ativar extensões para executar tarefas agendadas"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Ativar integração de eventos"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Ativar extensões para responder a eventos internos"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Excluir Locais Externos"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Período de Balanço Automático"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Mostrar nomes completos dos usuários"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Mostrar Nomes Completos em vez de Nomes de Usuário"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Fabricante"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Empresa"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr "Número de telefone do contato"
msgid "Contact email address"
msgstr "Endereço de e-mail do contato"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contato"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Endereço"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Endereços"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Selecione a Empresa"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Título do endereço"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Título descrevendo a entrada de endereço"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Endereço Principal"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Definir como endereço principal"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Linha 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Linha de endereço 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Linha 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Linha de endereço 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Código Postal"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Cidade/Região"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Código Postal Cidade / Região"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Estado/Provincia"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Estado ou Província"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "País"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "País do endereço"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notas de envio da transportadora"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notas para o envio da transportadora"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Notas de envio interno"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Notas de envio para uso interno"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Link para as informações do endereço (externo)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Peça do Fabricante"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Peça base"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Selecionar peça"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Selecionar fabricante"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "NPF"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Número de Peça do Fabricante"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL do link externo da peça do fabricante"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Descrição da peça do fabricante"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Unidades de pacote devem ser compatíveis com as unidades de peça base"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Unidades de pacote deve ser maior do que zero"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Parte do fabricante vinculado deve fazer referência à mesma peça base"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Fornecedor"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Selecione o fornecedor"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Unidade de reserva de estoque fornecedor"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Selecionar peça do fabricante"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL do link externo da peça do fabricante"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Descrição da peça fornecedor"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "preço base"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Taxa mínima (ex.: taxa de estoque)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Embalagem"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Embalagem de peças"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Quantidade de embalagens"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Quantidade total fornecida em um único pacote. Deixe em branco para itens únicos."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "múltiplo"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Pedir múltiplos"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Quantidade disponível do fornecedor"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Disponibilidade Atualizada"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Data da última atualização da disponibilidade dos dados"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Moeda padrão utilizada para este fornecedor"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Em Estoque"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Válido"
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Desconhecido"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Referência do Pedido"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Criado por"
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Pedido"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Peça Interna"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Concluído"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Pedido de Compra"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Pedido de Compra"
msgid "Sales Order"
msgstr "Pedido de Venda"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Preço Total"
msgid "Total price for this order"
msgstr "Preço total deste pedido"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Moeda do pedido"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Moeda para este pedido (deixe em branco para usar o padrão da empresa)"
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Descrição do pedido (opcional)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Selecione o código do projeto para este pedido"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link para página externa"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Data alvo"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Data esperada para entrega do pedido. O Pedido estará atrasado após esta data."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Data de emissão"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Dia que o pedido foi feito"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Usuário ou grupo responsável para este pedido"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Ponto de contato para este pedido"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Endereço da empresa para este pedido"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Referência do pedido"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Situação"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Situação do pedido de compra"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Empresa da qual os itens estão sendo encomendados"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Referencia do fornecedor"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Código de referência do pedido fornecedor"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "recebido por"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Dia que o pedido foi concluído"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destino"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Fornecedor de peça deve corresponder a fornecedor da OC"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "O item de linha não corresponde ao pedido de compra"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Quantidade deve ser um número positivo"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Cliente"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Empresa para qual os itens foi vendidos"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Referência do Cliente "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Código de Referência do pedido do cliente"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Data de Envio"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "enviado por"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Apenas um pedido aberto pode ser marcado como completo"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Pedido não pode ser concluído, pois, há envios incompletos"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Pedido não pode ser concluído, pois, há itens na linha incompletos"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Quantidade do item"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Referência do Item em Linha"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Observações do Item de Linha"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Data alvo para este item de linha (deixe em branco para usar a data alvo do pedido)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Descrição item de linha (opcional)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Contexto adicional para esta linha"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Preço Unitário"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "A peça do fornecedor deve corresponder ao fornecedor"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Fornecedor da Peça"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Recebido"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Número de itens recebidos"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Preço de Compra"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Preço unitário de compra"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Verificado por"
msgid "User who checked this shipment"
msgstr "Usuário que verificou esta remessa"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Remessa"
@@ -5164,7 +5164,11 @@ msgstr "Não é possível alocar uma linha sem uma peça"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "A quantidade de alocação não pode exceder a quantidade em estoque"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Quantidade alocada deve ser maior que zero"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Quantidade deve ser 1 para item de estoque serializado"
@@ -5172,7 +5176,7 @@ msgstr "Quantidade deve ser 1 para item de estoque serializado"
msgid "Sales order does not match shipment"
msgstr "Pedidos de venda não coincidem com a remessa"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Remessa não coincide com pedido de venda"
@@ -5256,247 +5260,247 @@ msgstr "Gastos para reparar e/ou devolver esta linha de itens"
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Itens de linha"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Nome do Fornecedor"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Pedido não pode ser cancelado"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Permitir que o pedido seja fechado com itens de linha incompletos"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "O pedido tem itens da linha incompletos"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "O pedido não está aberto"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Moeda de preço de compra"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Código (SKU)"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Numero interno do produto"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "A peça do fornecedor deve ser especificada"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "O pedido de compra deve ser especificado"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "O fornecedor deve corresponder o pedido de compra"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Pedido de compra deve corresponder ao fornecedor"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Itens de linha"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Selecione o local de destino para os itens recebidos"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Digite o código do lote para itens de estoque recebidos"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Data de validade"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Digite o número de série para itens de estoque recebidos"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Código de barras"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Código de barras lido"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Código de barras já em uso"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Itens de linha deve ser providenciados"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Loca de destino deve ser especificado"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Código de barras fornecido deve ser único"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Envios concluídos"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Moeda de preço de venda"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Nenhum detalhe da remessa fornecido"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Item de linha não está associado a este pedido"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Quantidade deve ser positiva"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Digite números de série para alocar"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "O pedido já foi enviado"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "O envio não está associado a este pedido"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Nenhuma correspondência encontrada para os seguintes números de série"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Devolver item do pedido"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Item do pedido não bate com o pedido de devolução"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Item do pedido já foi recebido"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Itens só podem ser recebidos de pedidos em processamento"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Tipo de moeda para o item do pedido"
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Categoria da Peça"
@@ -5656,7 +5660,7 @@ msgstr "Categoria da Peça"
msgid "Part Categories"
msgstr "Categorias de Peça"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Local Padrão"
@@ -5664,7 +5668,7 @@ msgstr "Local Padrão"
msgid "Default location for parts in this category"
msgstr "Local padrão para peças desta categoria"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Estrutural"
@@ -5680,12 +5684,12 @@ msgstr "Palavras-chave Padrão"
msgid "Default keywords for parts in this category"
msgstr "Palavras-chave padrão para peças nesta categoria"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ícone"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ícone (opcional)"
@@ -5693,655 +5697,655 @@ msgstr "Ícone (opcional)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Você não pode tornar esta categoria em estrutural, pois, algumas partes já estão alocadas!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Valor Padrão"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Valor Padrão do Parâmetro"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Peças"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Peça '{self}' não pode ser utilizada na BOM para '{parent}' (recursiva)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Peça '{parent}' é usada na BOM para '{self}' (recursiva)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN deve corresponder ao padrão regex {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Item em estoque com este número de série já existe"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Não é permitido duplicar IPN em configurações de partes"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Uma parte com este Nome, IPN e Revisão já existe."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Peças não podem ser atribuídas a categorias estruturais!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nome da peça"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "É um modelo"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Esta peça é uma peça modelo?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Esta peça é variante de outra peça?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variante de"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Descrição da peça (opcional)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Palavras chave"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Palavras-chave para melhorar a visibilidade nos resultados da pesquisa"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Categoria da Peça"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Revisão de peça ou número de versão"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revisão"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Onde este item é armazenado normalmente?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Fornecedor Padrão"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Fornecedor padrão da peça"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Validade Padrão"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Validade (em dias) para itens do estoque desta peça"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Estoque Mínimo"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Nível mínimo de estoque permitido"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Unidade de medida para esta peça"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Essa peça pode ser construída a partir de outras peças?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Essa peça pode ser usada para construir outras peças?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Esta parte tem rastreamento para itens únicos?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Esta peça pode ser comprada de fornecedores externos?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Esta peça pode ser vendida a clientes?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Esta parte está ativa?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Esta é uma peça virtual, como um software de produto ou licença?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Soma de Verificação da LDM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Soma de verificação da LDM armazenada"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "LDM conferida por"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "LDM verificada no dia"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Criação de Usuário"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Proprietário responsável por esta peça"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Venda múltipla"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Moeda usada para armazenar os cálculos de preços"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Custo Mínimo da LDM"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Custo mínimo das peças componentes"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Custo Máximo da LDM"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Custo máximo das peças componentes"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Custo Mínimo de Compra"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Custo mínimo histórico de compra"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Custo Máximo de Compra"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Custo máximo histórico de compra"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Preço Interno Mínimo"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Custo mínimo baseado nos intervalos de preço internos"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Preço Interno Máximo"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Custo máximo baseado nos intervalos de preço internos"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Preço Mínimo do Fornecedor"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Preço mínimo da peça de fornecedores externos"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Preço Máximo do Fornecedor"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Preço máximo da peça de fornecedores externos"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Custo Mínimo variável"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Custo mínimo calculado das peças variáveis"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Custo Máximo Variável"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Custo máximo calculado das peças variáveis"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Custo Mínimo"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Sobrepor o custo mínimo"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Custo Máximo"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Sobrepor o custo máximo"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Custo total mínimo calculado"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Custo total máximo calculado"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Preço Mínimo de Venda"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Preço mínimo de venda baseado nos intervalos de preço"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Preço Máximo de Venda"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Preço máximo de venda baseado nos intervalos de preço"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Custo Mínimo de Venda"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Preço histórico mínimo de venda"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Custo Máximo de Venda"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Preço histórico máximo de venda"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Peça para Balanço"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Total de Itens"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Número de entradas de estoques individuais no momento do balanço"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Estoque total disponível no momento do balanço"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Data"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Data de realização do balanço"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Custo Mínimo de Estoque"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Custo mínimo estimado de estoque disponível"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Custo Máximo de Estoque"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Custo máximo estimado de estoque disponível"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Nome de Teste"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Insira um nome para o teste"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Descrição do Teste"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Digite a descrição para este teste"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Requerido"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Este teste é obrigatório passar?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Requer Valor"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Este teste requer um valor ao adicionar um resultado de teste?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Anexo obrigatório"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Este teste requer um anexo ao adicionar um resultado de teste?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Selecione a Peça Parental"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sub peça"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Selecionar peça a ser usada na LDM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Quantidade de LDM para este item LDM"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Este item LDM é opcional"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Este item LDM é consumível (não é rastreado nos pedidos de construção)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Referência do Item LDM"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Notas do Item LDM"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Soma de verificação"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Soma de Verificação da LDM da linha"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Validado"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "O item da LDM foi validado"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Obtém herdados"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Este item da LDM é herdado por LDMs para peças variáveis"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Itens de estoque para as peças das variantes podem ser usados para este item LDM"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Quantidade deve ser valor inteiro para peças rastreáveis"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Sub peça deve ser especificada"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Substituir Item da LDM"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "A peça de substituição não pode ser a mesma que a peça mestre"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Item LDM Parental"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Substituir peça"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Parte 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Parte 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Selecionar Peça Relacionada"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Relacionamento da peça não pode ser criada com ela mesma"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Relação duplicada já existe"
@@ -6465,203 +6469,199 @@ msgstr "A peça do fabricante que corresponde a essa MPN já existe"
msgid "Supplier part matching this SKU already exists"
msgstr "A peça do fornecedor que corresponde a essa SKU já existe"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Nome da Categoria"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Produzindo"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Itens de Estoque"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Fornecedores"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Estoque Total"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Peça duplicada"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Copiar dados iniciais de outra peça"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Estoque inicial"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Criar peça com a quantidade inicial de estoque"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Informações do Fornecedor"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Adicionar informação inicial de fornecedor para esta peça"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Copiar Parâmetros da Categoria"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Copiar modelos de parâmetros a partir de categoria de peça selecionada"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Imagem Existente"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Nome de arquivo de uma imagem de peça existente"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "A imagem não existe"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Validar a Lista de Materiais completa"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Pode Produzir"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Preço Mínimo"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Sobrepor valor calculado para preço mínimo"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Moeda do preço mínimo"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Preço Máximo"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Sobrepor valor calculado para preço máximo"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Moeda do preço máximo"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Atualizar"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Atualizar preços desta peça"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Não foi possível converter das moedas fornecidas para {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Preço mínimo não pode ser maior que o preço máximo"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Preço máximo não pode ser menor que o preço mínimo"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Selecionar peça para copiar a LDM"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Remover Dado Existente"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Remova itens LDM existentes antes de copiar"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Incluir Herdados"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Incluir itens LDM que são herdados de peças modelo"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Pular Linhas inválidas"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Habilitar esta opção para pular linhas inválidas"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Copiar Peças Substitutas"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Copiar peças de substitutas quando duplicar itens de LDM"
@@ -6732,108 +6732,108 @@ msgstr "Nenhuma ação especificada"
msgid "No matching action found"
msgstr "Nenhuma ação correspondente encontrada"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Nenhum resultado encontrado para os dados do código de barras"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Coincidência encontrada para dados de código de barras"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Código de barras corresponde ao item existente"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Nenhuma informação de peça correspondente encontrada"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Nenhuma peça de fornecedor correspondente encontrada"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Múltiplas peças de fornecedores correspondentes encontradas"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Peça de fornecedor correspondente"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Item do pedido já foi recebido"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Diversos itens de linha correspondentes encontrados"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Nenhum item de linha correspondente encontrado"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Código de barras não corresponde a item de estoque válido"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Item do estoque não corresponde ao item de linha"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Estoque insuficiente disponível"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Item de estoque atribuído para pedido de venda"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Não há informação suficiente"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Mais informações necessárias para receber o item de linha"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Item de linha do pedido de compra recebido"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr "Fornece suporte nativo para códigos de barras"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Número de Sério"
@@ -8142,7 +8142,7 @@ msgstr "Arquivo de imagem não encontrado"
msgid "part_image tag requires a Part instance"
msgstr "Tag part_image necessita de uma instância de Peça"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "Tag company_image necessita de uma instância de Empresa"
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr "Tipos de Locais de estoque"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Ícone padrão para todos os locais que não tem um ícone (opcional)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Localização do estoque"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Locais de estoque"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Responsavel"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Selecionar Responsável"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Os itens de estoque podem não estar diretamente localizados em um local de estoque estrutural, mas podem ser localizados em locais filhos."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Externo"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Esta é uma localização de estoque externo"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Tipo de localização"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Tipo de Local de Estoque para esta locação"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Você não pode tornar este local do estoque estrutural, pois alguns itens de estoque já estão localizados nele!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Os itens de estoque não podem estar localizados em locais de estoque estrutural!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Item de estoque não pode ser criado para peças virtuais"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Tipo de peça('{self.supplier_part.part}') deve ser {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "A quantidade deve ser 1 para um item com número de série"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Número de série não pode ser definido se quantidade maior que 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "O item não pode pertencer a si mesmo"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Item deve ter uma referência de produção se is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Referência de produção não aponta ao mesmo objeto da peça"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Item de Estoque Parental"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Peça base"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Selecione uma peça do fornecedor correspondente para este item de estoque"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Onde está localizado este item de estoque?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Embalagem deste item de estoque está armazenado em"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Instalado em"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Este item está instalado em outro item?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Número de série para este item"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Código do lote para este item de estoque"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Quantidade de Estoque"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Produção de Origem"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Produção para este item de estoque"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Consumido por"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Pedido de produção que consumiu este item de estoque"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Pedido de compra Fonte"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Pedido de Compra para este item de estoque"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Destino do Pedido de Venda"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Data de validade para o item de estoque. Estoque será considerado expirado após este dia"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Excluir quando esgotado"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Excluir este item de estoque quando o estoque for esgotado"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Preço de compra unitário único no momento da compra"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Convertido para peça"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Peça não está definida como rastreável"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Quantidade deve ser inteira"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Quantidade não deve exceder a quantidade em estoque ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "A quantidade não corresponde aos números de série"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Item em estoque foi reservado para um pedido"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Item em estoque está instalado em outro item"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "item em estoque contem outro(s) items"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Item em estoque foi reservado para outro cliente"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Item no estoque está em produção no momento"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Itens de série não podem ser mesclados"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Item de estoque duplicado"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Itens de estoque devem se referir à mesma peça"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Itens de estoque devem se referir à mesma peça do fornecedor"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Códigos de estado do estoque devem corresponder"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Item do estoque não pode ser realocado se não houver estoque da mesma"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Observações de entrada"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Deve-se fornecer o valor desse teste"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "O anexo deve ser enviado para este teste"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Resultado do teste"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Valor da saída do teste"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Anexo do resultado do teste"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Notas do teste"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Item Primário"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Usar tamanho do pacote ao adicionar: a quantidade definida é o número de pacotes"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Inserir número de série para novos itens"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Quantidade não deve exceder a quantidade disponível em estoque ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Local de destino do estoque"
@@ -8805,103 +8805,103 @@ msgstr "Selecionar itens de estoque para mudar estados"
msgid "No stock items selected"
msgstr "Nenhum item de estoque selecionado"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Sub-locais"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Parte deve ser comercializável"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Item é alocado para um pedido de venda"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Item está alocado a um pedido de produção"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Cliente para atribuir itens de estoque"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "A empresa selecionada não é um cliente"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Nodas atribuídas a estoque"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Uma lista de item de estoque deve ser providenciada"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Notas de fusão de estoque"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Permitir fornecedores divergentes"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Permitir a fusão de itens de estoque de fornecedores diferentes"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Permitir estado incompatível"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Permitir a fusão de itens de estoque com estado diferentes"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Ao menos dois itens de estoque devem ser providenciados"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Valor da chave primária do Item Estoque"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Notas da transação de estoque"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Pedidos de vendas"
msgid "Return Orders"
msgstr "Pedidos de Devolução"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nome de usuário"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Primeiro Nome"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Sobrenome"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Sua conta foi criada."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Por favor, use a função de redefinir senha para acessar"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Bem-vindo(a) ao InvenTree"
diff --git a/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po
index a73f534a50..72122456c8 100644
--- a/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API endpoint não encontrado"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "A lista de itens ou filtros devem ser fornecidas para operação em massa"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Os itens devem ser fornecidos como lista"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Lista de itens inválida fornecida"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Filtros devem ser fornecidos como"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Filtros inválidos fornecidos"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Todos os filtros devem ser usados apenas como verdadeiro"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Nenhum item corresponde com os critérios fornecidos"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Nenhum dado fornecido"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "O usuário não tem permissão para visualizar esse modelo"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Não foi possível converter {original} para {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Quantidade inválida"
@@ -112,13 +112,13 @@ msgstr "Informe a data"
msgid "Invalid decimal value"
msgstr "Valor decimal inválido"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Observações"
@@ -171,35 +171,35 @@ msgstr "Remover as \"tags\" HTML deste valor"
msgid "Data contains prohibited markdown content"
msgstr "Os dados contêm conteúdo de marcação proibido"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Erro de conexão"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "O servidor respondeu com código de estado inválido"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Ocorreu uma exceção"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "O servidor respondeu com valor inválido do tamanho de conteúdo"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "O download da imagem excedeu seu tamanho máximo"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "O servidor remoto retornou uma resposta vazia"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "A URL fornecida não é um arquivo de imagem válido"
@@ -207,11 +207,11 @@ msgstr "A URL fornecida não é um arquivo de imagem válido"
msgid "Log in to the app"
msgstr "Entrar no aplicativo"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Você deve habilitar a autenticação de dois fatores antes de fazer qualquer coisa."
@@ -255,133 +255,133 @@ msgstr "A referência deve corresponder ao padrão exigido"
msgid "Reference number is too large"
msgstr "O número de referência é muito longo"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Escolha inválida"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Nome"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Descrição"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Descrição (opcional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Caminho"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Nomes duplicados não podem existir sob o mesmo parental"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Notas Markdown (opcional)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Dados de código de barras"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Dados de código de barras de terceiros"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Hash de código de barras"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Hash exclusivo de dados de código de barras"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Código de barras existente encontrado"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Falha na Tarefa"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Falha na tarefa de trabalho '{f}' em segundo plano após tentativas {n}"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Erro de servidor"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Um erro foi registrado pelo servidor."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Imagem"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Deve ser um número válido"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Moeda"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Selecione a moeda entre as opções disponíveis"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Valor inválido"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Imagem remota"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL do arquivo da imagem remota"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Baixar imagens de URL remota não está habilitado"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Falha ao baixar a imagem da URL remota"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Unidade física inválida"
msgid "Not a valid currency code"
msgstr "O código de moeda não é válido"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Situação de pedido"
@@ -562,21 +562,21 @@ msgstr "Situação de pedido"
msgid "Parent Build"
msgstr "Produção Progenitora"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Incluir Variáveis"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Incluir Variáveis"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Incluir Variáveis"
msgid "Part"
msgstr "Parte"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Categoria"
@@ -666,80 +666,80 @@ msgstr "Data máxima"
msgid "Exclude Tree"
msgstr "Excluir árvore"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "A compilação deve ser cancelada antes de ser excluída"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Consumível"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opcional"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Montagem"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Rastreado"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testável"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Pedido pendente"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Alocado"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Disponível"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Em pedido"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Ordem da compilação"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Local"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "A data limite deve ser posterior à data inicial"
msgid "Build Order Reference"
msgstr "Referência do pedido de produção"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referência do pedido de venda"
msgid "SalesOrder to which this build is allocated"
msgstr "Ordem de Venda para qual esta produção está alocada"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Local de Origem"
@@ -857,17 +857,17 @@ msgstr "Progresso da produção"
msgid "Build status code"
msgstr "Código de situação da produção"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Código do lote"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Código do lote para esta saída de produção"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Criado em"
@@ -887,7 +887,7 @@ msgstr "Data alvo final"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Data limite para finalização de produção. Estará atrasado a partir deste dia."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Data de conclusão"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Usuário que emitiu esta ordem de produção"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Responsável"
@@ -913,12 +913,12 @@ msgstr "Responsável"
msgid "User or group responsible for this build order"
msgstr "Usuário ou grupo responsável para esta ordem de produção"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Link Externo"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link para URL externa"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Prioridade desta ordem de compilação"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Código do Projeto"
@@ -960,7 +960,7 @@ msgstr "O Pedido de produção {build} foi concluído"
msgid "A build order has been completed"
msgstr "Um pedido de produção foi concluído"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Números de série devem ser fornecidos para peças rastreáveis"
@@ -976,23 +976,23 @@ msgstr "Saída da produção já está concluída"
msgid "Build output does not match Build Order"
msgstr "Saída da produção não corresponde à Ordem de Produção"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Quantidade deve ser maior que zero"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "A quantidade não pode ser maior que a quantidade de saída"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "A saída da produção não passou em todos os testes necessários"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "A saída da produção {serial} não passou em todos os testes necessários"
@@ -1001,18 +1001,18 @@ msgstr "A saída da produção {serial} não passou em todos os testes necessár
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Item da ordem de produção"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Compilar objeto"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Compilar objeto"
msgid "Quantity"
msgstr "Quantidade"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Quantidade necessária para o pedido de produção"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Item de produção deve especificar a saída, pois peças mestres estão marcadas como rastreáveis"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "O item de estoque selecionado não coincide com linha da BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Quantidade deve ser 1 para estoque serializado"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Quantidade alocada ({q}) não deve exceder a quantidade disponível em estoque ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "O item do estoque está sobre-alocado"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Quantidade alocada deve ser maior que zero"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Quantidade deve ser 1 para estoque serializado"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "O item de estoque selecionado não coincide com linha da BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Item de Estoque"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Origem do item em estoque"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Quantidade do estoque para alocar à produção"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Instalar em"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Destino do Item do Estoque"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Nível de produção"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Nome da Peça"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Rótulo de código do projeto"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Saída da Produção"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Saída de produção não coincide com a produção progenitora"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Peça de saída não coincide com a peça da ordem de produção"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Esta saída de produção já foi concluída"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Esta saída de produção não está totalmente alocada"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Insira a quantidade para construir a saída de produção"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Quantidade inteira necessária para peças rastreáveis"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Quantidade inteira necessária, pois a lista de materiais contém peças rastreáveis"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Números de Série"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Digite os números de série para saídas de produção"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Local de estoque para saídas de produção"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Alocar Números de Série Automaticamente"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Os seguintes números de série já existem ou são inválidos"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Uma lista de saídas de produção deve ser fornecida"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Local de estoque para saídas eliminadas"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Descartar alocações"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Descartar quaisquer alocações de estoque para saídas eliminadas"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Motivo para eliminar saída(s) de produção"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Local para saídas de produção concluídas"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Aceitar Alocação Incompleta"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Concluir saídas se o estoque não tiver sido totalmente alocado"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Consumir Estoque Alocado"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Consumir qualquer estoque que já tenha sido alocado para esta produção"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Remover Saídas Incompletas"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Excluir quaisquer saídas de produção que não tenham sido completadas"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Não permitido"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Aceitar conforme consumido por esta ordem de produção"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Desatribua antes de completar esta ordem de produção"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Como deseja manejar itens de estoque extras atribuídos ao pedido de produção"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Alguns itens de estoque foram sobrecarregados"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Aceitar não alocados"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Aceitar que os itens de estoque não foram totalmente alocados para esta encomenda"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Estoque obrigatório não foi totalmente alocado"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Aceitar Incompleto"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Aceitar que o número requerido de saídas de produção não foi concluído"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Quantidade de produção requerida não foi concluída"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "A ordem de produção tem ordens de produção secundárias abertas"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Ordem de produção deve estar no estado de produção"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Ordem de produção tem saídas incompletas"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Linha de Produção"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Saída da Produção"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Saída de produção deve indicar a mesma produção"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Item da linha de produção"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part deve apontar para a mesma parte que a ordem de produção"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "O item deve estar em estoque"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Quantidade disponível ({q}) excedida"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Saída de produção deve ser definida para alocação de peças rastreadas"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Saída de produção não pode ser definida para alocação de peças não rastreadas"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Alocação de itens precisam ser fornecidos"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Localização do estoque onde as peças devem ser originadas (deixe em branco a partir de qualquer local)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Excluir Local"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Excluir itens de estoque desta localização selecionada"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Estoque Intercambiável"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Itens de estoque em múltiplos locais podem ser intercambiáveis"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Estoque Substituto"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Permitir alocação de peças substitutas"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Itens opcionais"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Alocar itens BOM opcionais para ordem de produção"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Falha ao iniciar tarefa de alocação automática"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Referência do BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID da parte BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Nome da peça BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Produção"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Fornecedor da Peça"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Quantidade Alocada"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Referência da produção"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Nome da Categoria"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Rastreável"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Herdado"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Permitir variantes"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Item BOM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Em Produção"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Agendado para produção"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Estoque Externo"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Estoque Disponível"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Estoque Substituto Disponível"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Estoque de Variantes Disponível"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Ordem de produção vencido"
msgid "Build order {bo} is now overdue"
msgstr "Ordem de produção {bo} está atrasada"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "É um link"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "É um arquivo"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "O usuário não tem permissão para deletar esses anexos"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "O usuário não tem permissão para deletar esse anexo"
@@ -1530,7 +1522,11 @@ msgstr "Nenhum código de moeda válido fornecido"
msgid "No plugin"
msgstr "Sem extensão"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Rótulo de código do projeto"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Atualizado"
@@ -1558,7 +1554,7 @@ msgstr "Descrição do projeto"
msgid "User or group responsible for this project"
msgstr "Usuário ou grupo responsável por este projeto"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Chave de configurações"
@@ -1590,550 +1586,550 @@ msgstr "O valor não passa em verificações de validação"
msgid "Key string must be unique"
msgstr "A frase senha deve ser diferenciada"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Usuário"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Quantidade de Parcelamentos"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Preço"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Preço unitário na quantidade especificada"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Ponto final"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Ponto final em qual o webhook foi recebido"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Nome para este webhook"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Ativo"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Este webhook está ativo"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Ficha"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Ficha para acesso"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Secreto"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Segredo compartilhado para HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID da Mensagem"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Identificador exclusivo desta mensagem"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Servidor"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Servidor do qual esta mensagem foi recebida"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Cabeçalho"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Cabeçalho da mensagem"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Corpo"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Corpo da mensagem"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Ponto do qual esta mensagem foi recebida"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Trabalhado em"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "O trabalho desta mensagem foi concluído?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Título"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Link"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Publicado"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Resumo"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Lida"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Esta notícia do item foi lida?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Arquivo de imagem"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Tipo modelo de destino para esta imagem"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "ID do modelo de destino para esta imagem"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Unidade Personalizada"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "O símbolo da unidade deve ser único"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Nome da unidade deve ser um identificador válido"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Nome da unidade"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Símbolo"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Símbolo de unidade opcional"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definição"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definição de unidade"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Anexo"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Arquivo ausente"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Link externo não encontrado"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Categoria de Modelo"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Tipo modelo de destino para esta imagem"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Selecione arquivo para anexar"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Comentário"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Comentário de anexo"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Data de envio"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Data em que o arquivo foi enviado"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Tamanho do arquivo"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Tamanho do arquivo em bytes"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Categoria de modelo especificado inválido para anexo"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Estado personalizado"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Estados personalizados"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Status Referência Definido"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Conjunto de status estendido com este estado personalizado"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Chave lógica"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Chave lógica de estado que é igual a este estado personalizado na lógica de negócios"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Valor"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Valor numérico que será salvo no banco de dados dos modelos"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Nome do estado"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etiqueta"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etiqueta que será exibida no frontend"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Cor"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Cor que será exibida no frontend"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modelo"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Modelo que este estado está associado a"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Modelo deve ser selecionado"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "A chave deve ser selecionada"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Chave lógica deve ser selecionada"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "A chave deve diferir da chave lógica"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Uma classe de estado de referência válida deve ser fornecida"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "A chave deve diferir das chaves lógicas do estado de referência"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "A chave lógica deve estar nas chaves lógicas do estado de referência"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "O nome deve diferir dos nomes do estado de referência"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Lista de Seleção"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Listas de Seleção"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Nome da lista de seleção"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Descrição da lista de seleção"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Bloqueado"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Esta lista de seleção está bloqueada?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Esta lista de seleção pode ser usada?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Extensão de origem"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Extensão que fornece a lista de seleção"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Série de Origem"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Série opcional identificando a fonte usada para esta lista"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Entrada Padrão"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Entrada padrão para esta lista de seleção"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Criado em"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Data e hora em que a lista de seleção foi criada"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Última Atualização"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Data e hora da última atualização da lista de seleção"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Entrada na lista de seleção"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Entradas na Lista de Seleção"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Lista de seleção à qual esta entrada pertence"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Valor da entrada da lista de seleção"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Rótulo para a entrada da lista de seleção"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Descrição da entrada da lista de seleção"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Esta entrada da lista de seleção está ativa?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Nome do Parâmetro"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Unidades"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Caixa de seleção"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Habilitado"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Modelo"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Dados"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr "Anotação"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Escaneamento de Código de Barras"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Dados de código de barras"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Usuário que escaneou o código de barras"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Marcador de hora"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Data e hora da verificação do código de barras"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "O endpoint da URL que processou o código de barras"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Contexto"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Dados de contexto para escanear código de barras"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Resposta"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Dados de resposta da verificação de código de barras"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultado"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "O código de barras foi digitalizado com sucesso?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Ocorreu um erro"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: exclusão de registro de e-mail está protegida. Defina INVENTREE_PROTECT_EMAIL_LOG para Falso para permitir a exclusão."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "Mensagem de e-mail"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "Mensagens de Email"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Anunciado"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Enviado"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Falhou"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Entregue"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Confirmado"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Entrada"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Saída"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Não responder"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Rastrear Entrega"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Monitorado"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Clique no caminho"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "ID Global"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Identificador para esta mensagem (pode ser fornecido por sistema externo)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "ID do Tópico"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Identificador deste tópico de mensagem (pode ser fornecido por sistema externo)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Tópico"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Tópico vinculado para esta mensagem"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Tópico do e-mail"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Tópicos de e-mail"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Chave"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Chave única para este tópico (usada para identificar o tópico)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Identificador exclusivo deste tópico"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Iniciado interno"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Este tópico foi iniciado internamente?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Data e hora em que o tópico foi criado"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Data e hora da última atualização do tópico"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} cancelado"
msgid "A order that is assigned to you was canceled"
msgstr "Um pedido atribuído a você foi cancelado"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Itens Recebidos"
@@ -2351,93 +2347,101 @@ msgstr "Os itens de um pedido de compra foram recebidos"
msgid "Items have been received against a return order"
msgstr "Os itens de um pedido de devolução foram recebidos"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "É indicado se a configuração é substituída por uma variável de ambiente"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Substituir"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Está em execução"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Tarefas Pendentes"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Tarefas Agendadas"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Tarefas com Falhas"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID da Tarefa"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "ID Único da Tarefa"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Bloquear"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Congelar tempo"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Nome da tarefa"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Função"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Nome da função"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumentos"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumentos da tarefa"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Argumentos de Palavra-chave"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Argumentos Palavra-chave da Tarefa"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Nome do arquivo"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Categoria de Modelo"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Usuário não tem permissão para criar ou editar anexos para este modelo"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lista de seleção bloqueada"
@@ -2445,1128 +2449,1132 @@ msgstr "Lista de seleção bloqueada"
msgid "No group"
msgstr "Sem Grupo"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "URL do site está bloqueada por configuração"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Reinicialização necessária"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Uma configuração que requer uma reinicialização do servidor foi alterada"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migrações pendentes"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Número de migrações pendentes na base de dados"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Códigos de aviso ativos"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Um dicionário dos códigos de aviso ativos"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "ID da instância"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Identificador exclusivo para esta instância do InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "Anúncio ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Anuncie a ID da instância do servidor na informação de estado do servidor (não autenticado)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Nome da Instância do Servidor"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Descritor de frases para a instância do servidor"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Usar nome da instância"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Usar o nome da instância na barra de título"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Restringir a exibição 'sobre'"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Mostrar 'sobre' modal apenas para superusuários"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Nome da empresa"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Nome interno da Empresa"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL de Base"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL de base para instância do servidor"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Moeda Padrão"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Selecione a moeda base para cálculos de preços"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Moedas Suportadas"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Lista de códigos de moeda suportados"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Intervalo de Atualização da Moeda"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Com que frequência atualizar as taxas de câmbio (defina como zero para desativar)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dias"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Extensão de Atualização de Moeda"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Extensão de Atualização de Moeda a utilizar"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Baixar do URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Permitir baixar imagens remotas e arquivos de URL externos"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Limite de tamanho para baixar"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Tamanho máximo permitido para download da imagem remota"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Usuário-agente utilizado para baixar da URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Permitir a substituição de imagens e arquivos usados baixados por usuário-agente (deixar em branco por padrão)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Validação rigorosa de URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Exigir especificação de esquema ao validar URLs"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Atualizar Intervalo de Verificação"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Frequência para verificar atualizações (defina como zero para desativar)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Backup Automático"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Ativar cópia de segurança automática do banco de dados e arquivos de mídia"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Intervalo de Backup Automático"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Especificar o número de dia entre as cópias de segurança"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Intervalo para Excluir da Tarefa"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Os resultados da tarefa no plano de fundo serão excluídos após um número especificado de dias"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Intervalo para Excluir do Registro de Erro"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Registros de erros serão excluídos após um número especificado de dias"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Intervalo para Excluir de Notificação"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Notificações de usuários será excluído após um número especificado de dias"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Intervalo de Exclusão de e-mail"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "Mensagens de e-mail serão excluídas após um determinado número de dias"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Proteger o Log de E-mail"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Evitar exclusão de entradas de registros de e-mail"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Suporte aos códigos de barras"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Ativar suporte a leitor de código de barras na interface web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Armazenar Resultados do Código de Barras"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Armazenar a verificação do código de barras no banco de dados"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Contagem máxima de códigos de barras"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Número máximo de resultados de digitalização de códigos de barras para armazenar"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Atraso na entrada de código de barras"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Tempo de atraso de processamento de entrada de barras"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Suporte a webcam com código de barras"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Permitir a verificação de códigos de barras via webcam no navegador"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Código de barras Exibir Dados"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Exibir dados do código de barras no navegador como texto"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Extensão de geração de códio de barras"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Extensão para usar para geração de dados de código de barras interno"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revisões de peças"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Ativar campo de revisão para a Peça"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Somente Revisão da Assembleia"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Permitir revisões apenas para peças de montagem"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Permitir a exclusão da Assembleia"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Permitir a exclusão de peças que são usadas em uma montagem"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Regex IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Padrão de expressão regular para correspondência de Parte IPN"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Permitir Duplicação IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Permitir que várias peças compartilhem o mesmo IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Permitir Edição IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Permitir trocar o valor do IPN enquanto se edita a peça"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Copiar dados da LDM da Peça"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Copiar dados da LDM por padrão quando duplicar a peça"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Copiar Dados de Parâmetro da Peça"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Copiar dados de parâmetros por padrão quando duplicar uma peça"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Copiar Dados Teste da Peça"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Copiar dados de teste por padrão quando duplicar a peça"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Copiar Parâmetros dos Modelos de Categoria"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Copiar parâmetros do modelo de categoria quando criar uma peça"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Peças são modelos por padrão"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Peças podem ser montadas a partir de outros componentes por padrão"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Componente"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Peças podem ser usadas como sub-componentes por padrão"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Comprável"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Peças são compráveis por padrão"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Comercializável"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Peças vão vendíveis por padrão"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Peças vão rastreáveis por padrão"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtual"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Peças são virtuais por padrão"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Mostrar peças relacionadas"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Exibir peças relacionadas com uma peça"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Dados Iniciais de Estoque"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Permitir a criação do estoque inicial quando adicionar uma nova peça"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Dados Iniciais de Fornecedor"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Permitir a criação de dados iniciais de fornecedor quando adicionar uma nova peça"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Formato de Exibição do Nome da Peça"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formato para exibir o nome da peça"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Ícone de Categoria de Peça Padrão"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Ícone padrão de categoria de peça (vazio significa sem ícone)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Mínimo de Casas Decimais do Preço"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Mínimo número de casas decimais a exibir quando renderizar dados de preços"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Máximo Casas Decimais de Preço"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Número máximo de casas decimais a exibir quando renderizar dados de preços"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Usar Preços do Fornecedor"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Incluir quebras de preço do fornecedor nos cálculos de preços globais"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Substituir Histórico de Compras"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Histórico do pedido de compra substitui os intervalos dos preços do fornecedor"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Usar Preços do Item em Estoque"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Usar preço inserido manualmente no estoque para cálculos de valores"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Idade do preço do Item em Estoque"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Não incluir itens em estoque mais velhos que este número de dias no cálculo de preços"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Usar Preço Variável"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Incluir preços variáveis nos cálculos de valores gerais"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Apenas Ativar Variáveis"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Apenas usar peças variáveis ativas para calcular preço variáveis"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Atualização automática dos preços"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Atualizar automaticamente o preço da peça quando dados internos forem alterados"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Intervalo de Reconstrução de Preços"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Número de dias antes da atualização automática dos preços das peças"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Preços Internos"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Habilitar preços internos para peças"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Substituição de preço interno"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Se disponível, os preços internos substituem os cálculos da faixa de preços"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Habilitar Impressão de Etiqueta"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Ativar impressão de etiqueta pela interface da internet"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI da Imagem na Etiqueta"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Resolução de DPI quando gerar arquivo de imagens para fornecer à extensão de impressão de etiquetas"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Ativar Relatórios"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Ativar geração de relatórios"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Modo de depuração"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Gerar relatórios em modo de depuração (saída HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Registro de erros"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Registrar erros que ocorrem ao gerar relatórios"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Tamanho da página"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Tamanho padrão da página PDF para relatórios"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Forçar Unidades de Parâmetro"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Se as unidades são fornecidas, os valores do parâmetro devem corresponder às unidades especificadas"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Seriais Únicos Globais"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Números de série para itens de estoque devem ser globalmente únicos"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Excluir Estoque Esgotado"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Determina o comportamento padrão, quando um item de estoque é esgotado"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Modelo de Código de Lote"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Modelo para gerar códigos de lote padrão para itens de estoque"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Validade do Estoque"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Ativar função de validade de estoque"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Vender estoque expirado"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Permitir venda de estoque expirado"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Tempo de Estoque Inativo"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Número de dias em que os itens em estoque são considerados obsoleto antes de vencer"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Produzir Estoque Vencido"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Permitir produção com estoque vencido"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Controle de propriedade do estoque"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Ativar controle de propriedade sobre locais e itens de estoque"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Ícone padrão do local de estoque"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Ícone padrão de local de estoque (vazio significa sem ícone)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Mostrar Itens de Estoque Instalados"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Exibir itens de estoque instalados nas tabelas de estoque"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Verificar LDM ao instalar itens"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Itens do estoque instalado devem existir na LDM para a parte principal"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Permitir Fora de Transferência"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Permitir que os itens que não estão em estoque sejam transferidos entre locais de estoque"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Produção"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Produção"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Exigir proprietário responsável"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Um proprietário responsável deve ser atribuído a cada pedido"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Requer Parte Ativa"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Impedir a criação de ordem para partes inativas"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Exigir parte bloqueada"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Impedir criação de pedidos para peças desbloqueadas"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Exigir validade, BOM"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Impedir criação de pedido de compilação a menos que LDM tenha sido validada"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Exigir pedidos secundários fechados"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Impedir o preenchimento do pedido de construção até que todos os pedidos secundários sejam fechados"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Pedido de Produção Externo"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Ativar funcionalidade de pedido de construção externa"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Bloquear Até Passagem de Testes"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Impedir que as saídas da produção sejam concluídas até que todos os testes necessários passem"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Ativar Pedidos de Devolução"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Ativar funcionalidade de pedido de devolução na interface do usuário"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Devolução"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Devolução"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Editar os Pedidos de Devolução Concluídos"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Permitir a edição de pedidos de devolução após serem enviados ou concluídos"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Venda"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Venda"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Envio Padrão de Pedidos de Venda"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Habilitar criação de envio padrão com Pedidos de Vendas"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Editar os Pedidos de Vendas concluídos"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Permitir a edição de pedidos de vendas após serem enviados ou concluídos"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Marcar pedidos enviados como concluídos"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Pedidos de vendas marcados como enviados automaticamente serão concluídos, ignorando o status \"enviado\""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Modelo de Referência de Pedidos de Compras"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Modelo necessário para gerar campo de referência do Pedido de Compra"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Editar Pedidos de Compra Concluídos"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Permitir a edição de pedidos de compras após serem enviados ou concluídos"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Converter Moeda"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Converter valor de item para moeda base quando receber o estoque"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Completar automaticamente os pedidos de Compra"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Marcar automaticamente os pedidos de compra como concluídos quando todos os itens de linha forem recebidos"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Ativar senha esquecida"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Ativar a função \"Esqueci minha senha\" nas páginas de acesso"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Ativar cadastro"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Ativar auto-registro para usuários na página de entrada"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Ativar SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Ativar SSO na página de acesso"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Ativar registro SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Ativar auto-registro via SSO para usuários nas páginas de login"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Ativar sincronização de grupo SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Ativar sincronização de grupos do InvenTree com grupos fornecidos pelo IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Chave de grupo SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "O nome dos grupos reivindicam o atributo fornecido pelo IdP"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Mapa do grupo SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Um mapeamento de grupos de SSO para grupos locais de InvenTree. Se o grupo local não existir, será criado."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Remover grupos fora do SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Se os grupos atribuídos ao usuário devem ser removidos somente se eles não são o backend pelo IdP. Pois, essa configuração desabilitada pode causar problemas de segurança"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email obrigatório"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Exigir do usuário o e-mail no cadastro"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Auto-preencher usuários SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Preencher automaticamente os detalhes do usuário a partir de dados da conta SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Enviar email duplo"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Ao se registrar, peça aos usuários duas vezes por seus e-mails"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Senha duas vezes"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "No registro pedir aos usuários duas vezes pela senha"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Domínios permitidos"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Restringir registros a certos domínios (separados por vírgula, começando com @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupo no cadastro"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Grupo ao qual novos usuários serão atribuídos ao registro. Se a sincronização de grupo SSO estiver ativada, este grupo só estará definido se nenhum grupo puder ser atribuído a partir do IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Forçar AMF"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Os usuários devem usar uma segurança multifatorial."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Verificar extensões na inicialização"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Checar que todas as extensões instaladas no início — ativar em ambientes de contêineres"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Verificar por atualizações de extensão"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Ativar verificações periódicas de atualizações para a extensão instalados"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Ativar integração URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Ativar extensão para adicionar rotas URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Ativar integração de navegação"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Ativar extensões para integrar à navegação"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Ativar integração com aplicativo"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Ativar extensões para adicionar aplicativos"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Ativar integração com agendas"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Ativar extensões para executar tarefas agendadas"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Ativar integração de eventos"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Ativar extensões para responder a eventos internos"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Ativar integração de interface"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Ativar extensões para integrar na interface do usuário"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Ativar integração com o e-mail"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Ativar extensão para processar e-mails de saída/entrada"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Ativar códigos de projeto"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Ativar códigos de projeto para rastrear projetos"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Ativar Histórico de Ações"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Ativar funcionalidade para gravação de níveis e valor de estoque históricos"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Excluir Locais Externos"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Excluir itens de estoque em locais externos dos cálculos do histórico de ações"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Período de contagem automática"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Número de dias entre gravação automática de histórico de estoque"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Excluir entradas antigas do histórico do estoque"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Eliminar entradas no histórico de ações anteriores ao número especificado de dias"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Intervalo de Exclusão do Histórico"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Histórico de ações de estoque será excluído após um número especificado de dias"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Exibir nomes completos dos usuários"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Exibir nomes completos dos usuários em vez de nomes de usuários"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Exibir Perfis de Usuário"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Exibir Perfis de Usuários em sua página de perfil"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Ativar Dados da Estação de Teste"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Ativar coleção de dados da estação de teste para resultados de teste"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3800,7 +3808,7 @@ msgstr ""
#: common/setting/user.py:202
msgid "Enable spotlight navigation functionality"
-msgstr ""
+msgstr "Ativar a navegação do Spotlight"
#: common/setting/user.py:207
msgid "Navigation Icons"
@@ -3868,7 +3876,7 @@ msgstr "Salvar as últimas máquinas de impressão usadas para um usuário"
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "Todos os modelos"
#: common/validators.py:63
msgid "No attachment model type provided"
@@ -3911,29 +3919,29 @@ msgstr "A peça está ativa"
msgid "Manufacturer is Active"
msgstr "Fabricante está ativo"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "A peça do Fornecedor está ativa"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "A peça interna está ativa"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "O fornecedor está Ativo"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Fabricante"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Empresa"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Tem estoque"
@@ -3969,7 +3977,7 @@ msgstr "Número de telefone do contato"
msgid "Contact email address"
msgstr "Endereço de e-mail do contato"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Contato"
@@ -4022,255 +4030,247 @@ msgstr "CNPJ"
msgid "Company Tax ID"
msgstr "CNPJ da empresa"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Endereço"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Endereços"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Selecione a Empresa"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Título do endereço"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Título descrevendo a entrada do endereço"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Endereço Principal"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Definir como endereço principal"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Linha 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Linha de endereço 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Linha 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Linha de endereço 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "CEP"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Cidade/Região"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Cidade CEP / região"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Estado/Provincia"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Estado ou Província"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "País"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "País do endereço"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Notas de envio por correio"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Notas para o envio da transportadora"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Notas de envio interno"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Notas de envio para uso interno"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Link para as informações do endereço (externo)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Fabricante da peça"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Peça base"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Selecionar peça"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Selecionar fabricante"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "NPF"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Número de Peça do Fabricante"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL do link externo da peça do fabricante"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Descrição da peça do fabricante"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Unidades de pacote devem ser compatíveis com as unidades de peça base"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Unidades de pacote devem ser maior que zero"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Parte do fabricante vinculado deve fazer referência à mesma peça base"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Fornecedor"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Selecione o fornecedor"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Unidade de reserva de estoque fornecedor"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Esta parte de fornecedor está ativa?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Selecionar peça do fabricante"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL do link externo da peça do fabricante"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Descrição da peça fornecedor"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "preço base"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Taxa mínima (ex.: taxa de estoque)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Embalagem"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Embalagem de peças"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Quantidade de embalagens"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Quantidade total fornecida em um único pacote. Deixe em branco para itens individuais."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "múltiplo"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Pedido múltiplo"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Quantidade disponível do fornecedor"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Disponibilidade Atualizada"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Data da última atualização de dados disponíveis"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Parcelamento de Preço do Fornecedor"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Retorna a representação de cadeia de caracteres para o endereço primário. Esta propriedade existe para compatibilidade retroativa."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Moeda padrão utilizada para este fornecedor"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Nome da Empresa"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Em Estoque"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Ocorreu um erro ao exportar os dados"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "A extensão de exportação de dados retornou dados incorretos"
@@ -4418,7 +4418,7 @@ msgstr "Dados da linha original"
msgid "Errors"
msgstr "Erros"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Válido"
@@ -4530,7 +4530,7 @@ msgstr "Número de cópias para cada rótulo"
msgid "Connected"
msgstr "Conectado"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Desconhecido"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Referência do Pedido"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Pendente"
@@ -4670,7 +4670,7 @@ msgstr "Pendente"
msgid "Has Project Code"
msgstr "Tem código do projeto"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Criado por"
@@ -4710,11 +4710,11 @@ msgstr "Data Prevista Antes"
msgid "Has Pricing"
msgstr "Tem Preço"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Concluído Antes"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Concluído Após"
@@ -4722,40 +4722,40 @@ msgstr "Concluído Após"
msgid "External Build Order"
msgstr "Pedido de Produção Vencido"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Pedido"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Pedido Completo"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Peça Interna"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Pedido pendente"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Concluído"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Possui Envio"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Pedido de Compra"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Pedido de Compra"
msgid "Sales Order"
msgstr "Pedido de Venda"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Preço Total"
msgid "Total price for this order"
msgstr "Preço total deste pedido"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Moeda do Pedido"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Moeda para este pedido (deixe em branco para usar o padrão da empresa)"
@@ -4805,240 +4805,240 @@ msgstr "Data inicial deve ser anterior à data limite"
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Descrição do pedido (opcional)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Selecione o código do projeto para este pedido"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link para página externa"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Data inicial"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Data de início programada para esta encomenda"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Data Prevista"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Data esperada para entrega do pedido. O Pedido estará atrasado após esta data."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Data de emissão"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Dia que o pedido foi feito"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Usuário ou grupo responsável para este pedido"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Ponto de contato para este pedido"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Endereço da empresa para este pedido"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Referência do pedido"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Situação"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Estado do pedido"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Empresa da qual os itens estão sendo encomendados"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Referencia do fornecedor"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Código de referência do pedido fornecedor"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "recebido por"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Dia que o pedido foi concluído"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Destino"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Destino para os itens recebidos"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Fornecedor de peça deve corresponder a fornecedor da OC"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Quantidade deve ser um número positivo"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Cliente"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Empresa para qual os itens foi vendidos"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Situação do Pedido de Venda"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Referência do Cliente "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Código de Referência do pedido do cliente"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Data de envio"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "enviado por"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "O pedido já está completo"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "O pedido já está cancelado"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Apenas um pedido aberto pode ser marcado como completo"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Pedido não pode ser concluído, pois, há envios incompletos"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "O pedido não pode ser concluído, pois, há alocações incompletas"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "O pedido não pode ser concluído, pois, há itens de linha incompletos"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "O pedido está bloqueado e não pode ser modificado"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Quantidade do item"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Referência do Item em Linha"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Observações do Item de Linha"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Data limite para este item de linha (deixe em branco para usar a data limite do pedido)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Descrição do item de linha (opcional)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Contexto adicional para esta linha"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Preço Unitário"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Item de linha de pedido de compra"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "A peça do fornecedor deve corresponder ao fornecedor"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "Pedido de produção deve ser marcada como externa"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Os pedidos de produção só podem ser vinculados a partes de montagem"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "Criar parte do pedido deve combinar a parte do item de linha"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Fornecedor da Peça"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Recebido"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Número de itens recebidos"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Preço de Compra"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Preço unitário de compra"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Pedido de produção externa para ser preenchida por este item de linha"
@@ -5102,8 +5102,8 @@ msgstr "Verificado por"
msgid "User who checked this shipment"
msgstr "Usuário que verificou este envio"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Envio"
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Quantidade alocada deve ser maior que zero"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Copiar linhas"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Duplicar Pedido"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "ID do pedido inválido"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "O pedido não pode ser cancelado"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Mesclar Itens"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Código (SKU)"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Número Interno da Peça"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Nome Interno da Peça"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Código de barras"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Código de barras lido"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Código de barras já está em uso"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Itens Alocados"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Os seguintes números de série não estão disponíveis"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Categoria da Peça"
@@ -5656,7 +5660,7 @@ msgstr "Categoria da Peça"
msgid "Part Categories"
msgstr "Categorias de Peça"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Local Padrão"
@@ -5664,7 +5668,7 @@ msgstr "Local Padrão"
msgid "Default location for parts in this category"
msgstr "Local padrão para peças desta categoria"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr "Palavras-chave Padrão"
msgid "Default keywords for parts in this category"
msgstr "Palavras-chave padrão para peças nesta categoria"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ícone"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ícone (opcional)"
@@ -5693,655 +5697,655 @@ msgstr "Ícone (opcional)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Valor Padrão"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Valor Padrão do Parâmetro"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Peças"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Nome da peça"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "É um modelo"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Descrição da peça (opcional)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Palavras-chaves"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Categoria da Peça"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Fornecedor Padrão"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Fornecedor padrão da peça"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Validade Padrão"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Validade (em dias) para itens do estoque desta peça"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Estoque Mínimo"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Criação de Usuário"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Data"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Modelos de teste só podem ser criados para partes testáveis"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Obrigatório"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sub peça"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Itens de Estoque"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Estoque Total"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Estoque Inicial"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Atualizar"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Ignorar Linhas Inválidas"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Habilite essa opção para ignorar linhas inválidas"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "Nenhuma ação especificada"
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Nenhum resultado encontrado para os dados do código de barras"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Correspondência encontrada para dados de código de barras"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Modelo não suportado"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Código de barras corresponde ao item existente"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Opções"
@@ -8072,7 +8072,7 @@ msgstr "Total"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Responsável"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Selecionar Responsável"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nome de usuário"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Primeiro Nome"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Primeiro nome do usuário"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Sobrenome"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Sobrenome do usuário"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Endereço de e-mail do usuário"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superusuário"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Somente um superusuário pode ajustar este campo"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Senha"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Senha do usuário"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "Você não tem permissão para criar usuários"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Sua conta foi criada."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Bem-vindo(a) ao InvenTree"
diff --git a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po
index 2600bc902b..e84b839365 100644
--- a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Romanian\n"
"Language: ro_RO\n"
@@ -17,65 +17,65 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
-msgstr ""
+msgstr "Criteriul API final nu a fost găsit"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
-msgstr ""
+msgstr "Lista articolelor sau filtrelor trebuie să fie prevăzută pentru operaţiune în vrac"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
-msgstr ""
+msgstr "Articolele trebuie să fie furnizate ca o listă"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
-msgstr ""
+msgstr "Listă de articole nevalidă furnizată"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
-msgstr ""
+msgstr "Filtrele trebuie furnizate ca dicționar"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
-msgstr ""
+msgstr "Filtre furnizate nevalide"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
-msgstr ""
+msgstr "Toate filtrele trebuie folosite doar cu adevărat"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
-msgstr ""
+msgstr "Niciun articol nu corespunde criteriilor furnizate"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
-msgstr ""
+msgstr "Nu sunt furnizate date"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
-msgstr ""
+msgstr "Acest câmp trebuie să fie unic."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Utilizatorul nu are permisiunea de a vedea acest model"
#: InvenTree/auth_overrides.py:56
msgid "Email (again)"
-msgstr ""
+msgstr "E-mail (din nou)"
#: InvenTree/auth_overrides.py:60
msgid "Email address confirmation"
-msgstr ""
+msgstr "Confirmare adresă e-mail"
#: InvenTree/auth_overrides.py:83
msgid "You must type the same email each time."
-msgstr ""
+msgstr "Trebuie să tastați același e-mail de fiecare dată."
#: InvenTree/auth_overrides.py:125 InvenTree/auth_overrides.py:132
msgid "The provided primary email address is not valid."
-msgstr ""
+msgstr "Adresa de e-mail principală furnizată nu este validă."
#: InvenTree/auth_overrides.py:138
msgid "The provided email domain is not approved."
@@ -84,60 +84,60 @@ msgstr "Domeniul de e-mail furnizat nu este aprobat."
#: InvenTree/conversion.py:240
#, python-brace-format
msgid "Invalid unit provided ({unit})"
-msgstr ""
+msgstr "Unitate nevalidă furnizată ({unit})"
#: InvenTree/conversion.py:257
msgid "No value provided"
-msgstr ""
+msgstr "Nicio valoare furnizată"
#: InvenTree/conversion.py:284
#, python-brace-format
msgid "Could not convert {original} to {unit}"
-msgstr ""
+msgstr "Nu s-a putut converti {original} în {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
-msgstr ""
+msgstr "Cantitate furnizata nevalida"
#: InvenTree/exceptions.py:136
msgid "Error details can be found in the admin panel"
-msgstr ""
+msgstr "Detaliile de eroare pot fi găsite în panoul de administrare"
#: InvenTree/fields.py:146
msgid "Enter date"
-msgstr ""
+msgstr "Enter Date"
#: InvenTree/fields.py:169
msgid "Invalid decimal value"
-msgstr ""
+msgstr "Valoare zecimală nevalidă"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
-msgstr ""
+msgstr "Notițe"
#: InvenTree/format.py:166
#, python-brace-format
msgid "Value '{name}' does not appear in pattern format"
-msgstr ""
+msgstr "Valoarea '{name}' nu apare în formatul modelului"
#: InvenTree/format.py:177
msgid "Provided value does not match required pattern: "
-msgstr ""
+msgstr "Valoarea furnizată nu se potrivește cu modelul necesar: "
#: InvenTree/helpers.py:601
msgid "Cannot serialize more than 1000 items at once"
-msgstr ""
+msgstr "Nu se pot serializa mai mult de 1000 de elemente odată"
#: InvenTree/helpers.py:607
msgid "Empty serial number string"
-msgstr ""
+msgstr "Golire șir de numere de serie"
#: InvenTree/helpers.py:636
msgid "Duplicate serial"
@@ -147,279 +147,279 @@ msgstr "Număr de serie duplicat"
#: InvenTree/helpers.py:736 InvenTree/helpers.py:755
#, python-brace-format
msgid "Invalid group: {group}"
-msgstr ""
+msgstr "Grup nevalid: {group}"
#: InvenTree/helpers.py:699
#, python-brace-format
msgid "Group range {group} exceeds allowed quantity ({expected_quantity})"
-msgstr ""
+msgstr "Interval de grup {group} depășește cantitatea permisă ({expected_quantity})"
#: InvenTree/helpers.py:765
msgid "No serial numbers found"
-msgstr ""
+msgstr "Niciun număr de serie găsit"
#: InvenTree/helpers.py:772
#, python-brace-format
msgid "Number of unique serial numbers ({n}) must match quantity ({q})"
-msgstr ""
+msgstr "Numărul unic de numere de serie ({n}) trebuie să corespundă cu cantitatea ({q})"
#: InvenTree/helpers.py:902
msgid "Remove HTML tags from this value"
-msgstr ""
+msgstr "Elimină tag-urile HTML din această valoare"
#: InvenTree/helpers.py:981
msgid "Data contains prohibited markdown content"
-msgstr ""
+msgstr "Datele conţin conţinut de marcaje interzis"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
-msgstr ""
+msgstr "Eroare de conexiune"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
-msgstr ""
+msgstr "Serverul a răspuns cu un cod de stare invalid"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
-msgstr ""
+msgstr "Excepție apărută"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
-msgstr ""
+msgstr "Serverul a răspuns cu o valoare de Content-Length invalidă"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
-msgstr ""
-
-#: InvenTree/helpers_model.py:167
-msgid "Image download exceeded maximum size"
-msgstr ""
+msgstr "Dimensiunea imaginii este prea mare"
#: InvenTree/helpers_model.py:172
-msgid "Remote server returned empty response"
-msgstr ""
+msgid "Image download exceeded maximum size"
+msgstr "Descărcarea imaginii a depăşit dimensiunea maximă"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:177
+msgid "Remote server returned empty response"
+msgstr "Serverul la distanță a returnat un răspuns gol"
+
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
-msgstr ""
+msgstr "URL-ul furnizat nu este un fișier imagine valid"
#: InvenTree/magic_login.py:31
msgid "Log in to the app"
-msgstr ""
+msgstr "Conectați-vă la aplicație"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
-msgstr ""
+msgstr "E-mail"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
-msgstr ""
+msgstr "Trebuie să activați autentificarea cu doi factori înainte de a face orice altceva."
#: InvenTree/models.py:114
msgid "Error running plugin validation"
-msgstr ""
+msgstr "Eroare la rularea validării plugin-ului"
#: InvenTree/models.py:195
msgid "Metadata must be a python dict object"
-msgstr ""
+msgstr "Metadata trebuie să fie un obiect dict python"
#: InvenTree/models.py:201
msgid "Plugin Metadata"
-msgstr ""
+msgstr "Metadatele plugin"
#: InvenTree/models.py:202
msgid "JSON metadata field, for use by external plugins"
-msgstr ""
+msgstr "Câmp de metadate JSON pentru utilizare de plugin-uri externe"
#: InvenTree/models.py:385
msgid "Improperly formatted pattern"
-msgstr ""
+msgstr "Model formatat incorect"
#: InvenTree/models.py:392
msgid "Unknown format key specified"
-msgstr ""
+msgstr "Format necunoscut cheie specificat"
#: InvenTree/models.py:398
msgid "Missing required format key"
-msgstr ""
+msgstr "Lipseste cheia de format"
#: InvenTree/models.py:409
msgid "Reference field cannot be empty"
-msgstr ""
+msgstr "Câmpul de referință nu poate fi gol"
#: InvenTree/models.py:417
msgid "Reference must match required pattern"
-msgstr ""
+msgstr "Referința trebuie să corespundă modelului necesar"
#: InvenTree/models.py:448
msgid "Reference number is too large"
-msgstr ""
+msgstr "Numărul de referință este prea mare"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
-msgstr ""
+msgstr "Alegere invalidă"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
-msgstr ""
+msgstr "Nume"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
-msgstr ""
+msgstr "Descriere"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
-msgstr ""
+msgstr "Descriere (opțional)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
-msgstr ""
+msgstr "Cale"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
-msgstr ""
+msgstr "Duplicate nume nu poate exista sub acelaşi părinte"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
-msgstr ""
+msgstr "Note Markdown (opțional)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
-msgstr ""
+msgstr "Date Cod de Bare"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
-msgstr ""
+msgstr "Date coduri de bare terțe"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
-msgstr ""
+msgstr "Date Cod de Bare"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
-msgstr ""
+msgstr "Hash unic al codului de bare"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
-msgstr ""
+msgstr "Cod de bare existent găsit"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
-msgstr ""
+msgstr "Eroare sarcină"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
-msgstr ""
+msgstr "Sarcina lucrătorului de fundal '{f}' a eșuat după {n} încercări"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
-msgstr ""
+msgstr "Eroare de server"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
-msgstr ""
+msgstr "A fost înregistrată o eroare de către server."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
-msgstr ""
+msgstr "Imagine"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
-msgstr ""
+msgstr "Trebuie sa fie un număr valid"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
-msgstr ""
+msgstr "Monedă"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
-msgstr ""
+msgstr "Selectați moneda din opțiunile disponibile"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Acest câmp nu poate fi null."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
-msgstr ""
+msgstr "Valoare invalidă"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
-msgstr ""
+msgstr "Imagini de la distanţă"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
-msgstr ""
+msgstr "URL-ul imaginii la distanţă"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
-msgstr ""
+msgstr "Descărcarea imaginilor din URL-ul de la distanţă nu este activată"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
-msgstr ""
+msgstr "Descărcarea imaginii din URL-ul de la distanță a eșuat"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "Format de tip de conținut nevalid"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "Tipul de conținut nu a fost găsit"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "Tipul de conținut nu se potrivește cu mixin necesar clasei"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
-msgstr ""
+msgstr "Arabic"
#: InvenTree/setting/locales.py:21
msgid "Bulgarian"
-msgstr ""
+msgstr "Bulgară"
#: InvenTree/setting/locales.py:22
msgid "Czech"
-msgstr ""
+msgstr "Cehă"
#: InvenTree/setting/locales.py:23
msgid "Danish"
-msgstr ""
+msgstr "Daneză"
#: InvenTree/setting/locales.py:24
msgid "German"
-msgstr ""
+msgstr "Germană"
#: InvenTree/setting/locales.py:25
msgid "Greek"
-msgstr ""
+msgstr "Greacă"
#: InvenTree/setting/locales.py:26
msgid "English"
-msgstr ""
+msgstr "Engleză"
#: InvenTree/setting/locales.py:27
msgid "Spanish"
-msgstr ""
+msgstr "Spaniolă"
#: InvenTree/setting/locales.py:28
msgid "Spanish (Mexican)"
-msgstr ""
+msgstr "Spaniolă (Mexican)"
#: InvenTree/setting/locales.py:29
msgid "Estonian"
@@ -427,156 +427,156 @@ msgstr "Estonă"
#: InvenTree/setting/locales.py:30
msgid "Farsi / Persian"
-msgstr ""
+msgstr "Farsi / persană"
#: InvenTree/setting/locales.py:31
msgid "Finnish"
-msgstr ""
+msgstr "Finlandeză"
#: InvenTree/setting/locales.py:32
msgid "French"
-msgstr ""
+msgstr "Franceză"
#: InvenTree/setting/locales.py:33
msgid "Hebrew"
-msgstr ""
+msgstr "Ebraică"
#: InvenTree/setting/locales.py:34
msgid "Hindi"
-msgstr ""
+msgstr "Hindi"
#: InvenTree/setting/locales.py:35
msgid "Hungarian"
-msgstr ""
+msgstr "Maghiară"
#: InvenTree/setting/locales.py:36
msgid "Italian"
-msgstr ""
+msgstr "Italiană"
#: InvenTree/setting/locales.py:37
msgid "Japanese"
-msgstr ""
+msgstr "Japoneză"
#: InvenTree/setting/locales.py:38
msgid "Korean"
-msgstr ""
+msgstr "Coreeană"
#: InvenTree/setting/locales.py:39
msgid "Lithuanian"
-msgstr ""
+msgstr "Lituaniană"
#: InvenTree/setting/locales.py:40
msgid "Latvian"
-msgstr ""
+msgstr "Letonă"
#: InvenTree/setting/locales.py:41
msgid "Dutch"
-msgstr ""
+msgstr "Olandeză"
#: InvenTree/setting/locales.py:42
msgid "Norwegian"
-msgstr ""
+msgstr "Norvegiană"
#: InvenTree/setting/locales.py:43
msgid "Polish"
-msgstr ""
+msgstr "Poloneză"
#: InvenTree/setting/locales.py:44
msgid "Portuguese"
-msgstr ""
+msgstr "Portugheză"
#: InvenTree/setting/locales.py:45
msgid "Portuguese (Brazilian)"
-msgstr ""
+msgstr "Portugheză (braziliană)"
#: InvenTree/setting/locales.py:46
msgid "Romanian"
-msgstr ""
+msgstr "Română"
#: InvenTree/setting/locales.py:47
msgid "Russian"
-msgstr ""
+msgstr "Rusă"
#: InvenTree/setting/locales.py:48
msgid "Slovak"
-msgstr ""
+msgstr "Slovacă"
#: InvenTree/setting/locales.py:49
msgid "Slovenian"
-msgstr ""
+msgstr "Slovenă"
#: InvenTree/setting/locales.py:50
msgid "Serbian"
-msgstr ""
+msgstr "Sârbă"
#: InvenTree/setting/locales.py:51
msgid "Swedish"
-msgstr ""
+msgstr "Suedeză"
#: InvenTree/setting/locales.py:52
msgid "Thai"
-msgstr ""
+msgstr "Thai"
#: InvenTree/setting/locales.py:53
msgid "Turkish"
-msgstr ""
+msgstr "Turcă"
#: InvenTree/setting/locales.py:54
msgid "Ukrainian"
-msgstr ""
+msgstr "Ucraineană"
#: InvenTree/setting/locales.py:55
msgid "Vietnamese"
-msgstr ""
+msgstr "Vietnameză"
#: InvenTree/setting/locales.py:56
msgid "Chinese (Simplified)"
-msgstr ""
+msgstr "Chineză (simplificată)"
#: InvenTree/setting/locales.py:57
msgid "Chinese (Traditional)"
-msgstr ""
+msgstr "Chineză (tradițională)"
#: InvenTree/tasks.py:576
msgid "Update Available"
-msgstr ""
+msgstr "Actualizare disponibilă"
#: InvenTree/tasks.py:577
msgid "An update for InvenTree is available"
-msgstr ""
+msgstr "O actualizare pentru InvenTree este disponibilă"
#: InvenTree/validators.py:28
msgid "Invalid physical unit"
-msgstr ""
+msgstr "Unitate fizică nevalidă"
#: InvenTree/validators.py:34
msgid "Not a valid currency code"
-msgstr ""
+msgstr "Nu este un cod valutar valid"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
-msgstr ""
+msgstr "Starea comenzii"
#: build/api.py:80 build/models.py:265
msgid "Parent Build"
-msgstr ""
+msgstr "Construcție părinte"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
-msgstr ""
+msgstr "İnclude variante"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -594,154 +594,154 @@ msgstr ""
#: templates/email/part_event_notification.html:15
#: templates/email/stale_stock_notification.html:17
msgid "Part"
-msgstr ""
+msgstr "Piesă"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
-msgstr ""
+msgstr "Categorie"
#: build/api.py:131 build/api.py:135
msgid "Ancestor Build"
-msgstr ""
+msgstr "Ancestor Build"
#: build/api.py:152 order/api.py:134
msgid "Assigned to me"
-msgstr ""
+msgstr "Alocate mie"
#: build/api.py:167
msgid "Assigned To"
-msgstr ""
+msgstr "Atribuit către"
#: build/api.py:202
msgid "Created before"
-msgstr ""
+msgstr "Creat înainte de"
#: build/api.py:206
msgid "Created after"
-msgstr ""
+msgstr "Creat după"
#: build/api.py:210
msgid "Has start date"
-msgstr ""
+msgstr "Are data de începere"
#: build/api.py:218
msgid "Start date before"
-msgstr ""
+msgstr "Data de început înainte de"
#: build/api.py:222
msgid "Start date after"
-msgstr ""
+msgstr "Data de incepere după"
#: build/api.py:226
msgid "Has target date"
-msgstr ""
+msgstr "Are dată țintă"
#: build/api.py:234
msgid "Target date before"
-msgstr ""
+msgstr "Data de început înainte de"
#: build/api.py:238
msgid "Target date after"
-msgstr ""
+msgstr "Data de incepere după"
#: build/api.py:242
msgid "Completed before"
-msgstr ""
+msgstr "Finalizat înainte de"
#: build/api.py:246
msgid "Completed after"
-msgstr ""
+msgstr "Finalizat după"
#: build/api.py:249 order/api.py:231
msgid "Min Date"
-msgstr ""
+msgstr "Dată min"
#: build/api.py:272 order/api.py:250
msgid "Max Date"
-msgstr ""
+msgstr "Dată maximă"
#: build/api.py:297 build/api.py:300 part/api.py:212 stock/api.py:961
msgid "Exclude Tree"
-msgstr ""
+msgstr "Exclude arbore"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
-msgstr ""
+msgstr "Construcția trebuie anulată înainte de a putea fi ștearsă"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
-msgstr ""
+msgstr "Consumabile"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
-msgstr ""
+msgstr "Opţional"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
-msgstr ""
+msgstr "Asamblate"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
-msgstr ""
+msgstr "Urmarit"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
-msgstr ""
+msgstr "Testabilă"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
-msgstr ""
+msgstr "Comandă restantă"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
-msgstr ""
+msgstr "Alocate"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
-msgstr ""
+msgstr "Consumat"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
-msgstr ""
+msgstr "Disponibil"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
-msgstr ""
+msgstr "Pe comandă"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
-msgstr ""
+msgstr "Comenzi de Producție"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
-msgstr ""
+msgstr "Locatie"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
-msgstr ""
+msgstr "Ieșire"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
-msgstr ""
+msgstr "Filtrează după ID-ul elementelor de ieșire din stoc. Utilizați \"null\" pentru a găsi elemente de construcție dezinstalate."
#: build/models.py:119 users/ruleset.py:31
msgid "Build Orders"
@@ -749,145 +749,145 @@ msgstr "Comenzi de Producție"
#: build/models.py:169
msgid "Assembly BOM has not been validated"
-msgstr ""
+msgstr "BOM-ul nu a fost validată"
#: build/models.py:176
msgid "Build order cannot be created for an inactive part"
-msgstr ""
+msgstr "Comandă de producție nu poate fi creată pentru piesa inactiva"
#: build/models.py:183
msgid "Build order cannot be created for an unlocked part"
-msgstr ""
+msgstr "Comandă de producție nu poate fi creată pentru piesa deblocată"
#: build/models.py:201
msgid "Build orders can only be externally fulfilled for purchaseable parts"
-msgstr ""
+msgstr "Comenzile de producție pot fi îndeplinite extern doar pentru piesele achiziționabile"
#: build/models.py:208 order/models.py:370
msgid "Responsible user or group must be specified"
-msgstr ""
+msgstr "Utilizator sau grup responsabil trebuie specificat"
#: build/models.py:213
msgid "Build order part cannot be changed"
-msgstr ""
+msgstr "Piesa din comanda de producție nu poate fi schimbata"
#: build/models.py:218 order/models.py:383
msgid "Target date must be after start date"
-msgstr ""
+msgstr "Data țintă trebuie să fie după data de început"
#: build/models.py:246
msgid "Build Order Reference"
-msgstr ""
+msgstr "Referință comandă producție"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
#: report/templates/report/inventree_sales_order_report.html:28
msgid "Reference"
-msgstr ""
+msgstr "Referinţă"
#: build/models.py:256
msgid "Brief description of the build (optional)"
-msgstr ""
+msgstr "Scurtă descriere a construcției (opțional)"
#: build/models.py:266
msgid "BuildOrder to which this build is allocated"
-msgstr ""
+msgstr "Comanda de producție pentru care această construcție este alocată"
#: build/models.py:275
msgid "Select part to build"
-msgstr ""
+msgstr "Selectează piesa pentru construit"
#: build/models.py:280
msgid "Sales Order Reference"
-msgstr ""
+msgstr "Referință comandă de vânzare"
#: build/models.py:285
msgid "SalesOrder to which this build is allocated"
-msgstr ""
+msgstr "Comanda de vânzare pentru care această construcție este alocată"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
-msgstr ""
+msgstr "Locație sursă"
#: build/models.py:296
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
-msgstr ""
+msgstr "Selectați locația de unde se va prelua stocul pentru această producție (lăsați câmpul necompletat pentru a prelua stocul din orice locație)"
#: build/models.py:302
msgid "External Build"
-msgstr ""
+msgstr "Construcție externă"
#: build/models.py:303
msgid "This build order is fulfilled externally"
-msgstr ""
+msgstr "Această comandă de producție este îndeplinită extern"
#: build/models.py:308
msgid "Destination Location"
-msgstr ""
+msgstr "Locul destinației"
#: build/models.py:313
msgid "Select location where the completed items will be stored"
-msgstr ""
+msgstr "Selectaţi locaţia unde vor fi stocate elementele complete"
#: build/models.py:317
msgid "Build Quantity"
-msgstr ""
+msgstr "Cantitatea construirii"
#: build/models.py:320
msgid "Number of stock items to build"
-msgstr ""
+msgstr "Numărul de articole de stoc pentru producție"
#: build/models.py:324
msgid "Completed items"
-msgstr ""
+msgstr "Articole finalizate"
#: build/models.py:326
msgid "Number of stock items which have been completed"
-msgstr ""
+msgstr "Numărul de articole din stoc care au fost finalizate"
#: build/models.py:330
msgid "Build Status"
-msgstr ""
+msgstr "Stare producției"
#: build/models.py:335
msgid "Build status code"
-msgstr ""
+msgstr "Cod status producție"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
-msgstr ""
+msgstr "Cod lot"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
-msgstr ""
+msgstr "Cod de lot pentru această producție"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
-msgstr ""
+msgstr "Data creării"
#: build/models.py:358
msgid "Build start date"
-msgstr ""
+msgstr "Data începerii construcției"
#: build/models.py:359
msgid "Scheduled start date for this build order"
-msgstr ""
+msgstr "Data de început programată pentru această comandă de construcție"
#: build/models.py:365
msgid "Target completion date"
-msgstr ""
+msgstr "Data finalizării țintă"
#: build/models.py:367
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,21 +931,21 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
-msgstr ""
+msgstr "Cod proiect"
#: build/models.py:424
msgid "Project code for this build order"
-msgstr ""
+msgstr "Cod de proiect pentru această comandă de construcție"
#: build/models.py:677
msgid "Cannot complete build order with open child builds"
-msgstr ""
+msgstr "Nu se poate finaliza construcția comenzii cu versiuni deschise"
#: build/models.py:682
msgid "Cannot complete build order with incomplete outputs"
-msgstr ""
+msgstr "Nu se poate completa comanda de producție cu rezultate incomplete"
#: build/models.py:701 build/models.py:831
msgid "Failed to offload task to complete build allocations"
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Comenzi externe de producție"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Afișează numele complet al utilizatorilor în loc de nume de utilizator"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Nume utilizator"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Prenumele"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Prenumele utilizatorului"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po
index 5cbd8c8ad0..cd46884e10 100644
--- a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Конечная точка API не обнаружена"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Список элементов или фильтров должен быть указан для массовых операций"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Элементы должны быть представлены в виде списка"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Предоставлен недопустимый список элементов"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Фильтры должны быть предоставлены в виде словаря"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Не верные фильтры"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Все фильтры будут использоваться с параметром True"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Нет элементов, соответствующих заданным критериям"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Данные не предоставлены"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr "Поле должно быть уникальным."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "У пользователя недостаточно прав для просмотра этой модели!"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Невозможно преобразовать {original} в {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "недопустимое количество"
@@ -112,13 +112,13 @@ msgstr "Введите дату"
msgid "Invalid decimal value"
msgstr "Не верное десятичное значение"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Заметки"
@@ -171,35 +171,35 @@ msgstr "Удалить HTML теги из этого значения"
msgid "Data contains prohibited markdown content"
msgstr "Данные содержат недопустимую разметку"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Ошибка соединения"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Сервер ответил неверным кодом статуса"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Произошло исключение"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Сервер ответил неверным значением Контент-Длина"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Изображение слишком большое"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Загрузка изображения превышен максимальный размер"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Удаленный сервер вернул пустой ответ"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Предоставленный URL не является допустимым файлом изображения"
@@ -207,11 +207,11 @@ msgstr "Предоставленный URL не является допусти
msgid "Log in to the app"
msgstr "Войти в приложение"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Электронная почта"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Вы должны включить двухфакторную аутентификацию, прежде чем делать что-нибудь еще."
@@ -255,135 +255,135 @@ msgstr "Ссылка должна соответствовать шаблону
msgid "Reference number is too large"
msgstr "Номер ссылки слишком большой"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Неверный выбор"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Название"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Описание"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Описание (необязательно)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Путь"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Повторяющиеся имена не могут существовать под одним и тем же родителем"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Записи о скидке (необязательно)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Данные штрихкода"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Данные стороннего штрих-кода"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Хэш штрих-кода"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Уникальный хэш данных штрих-кода"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Обнаружен существующий штрих-код"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Задача не удалась"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Фоновый процесс '{f}' после {n} попыток завершился с ошибкой"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Ошибка сервера"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Сервер зарегистрировал ошибку."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Изображение"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Должно быть действительным номером"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Валюта"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Выберите валюту из доступных вариантов"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Это поле не может быть пустым."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Неверное значение"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Удаленное изображение"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "ССЫЛКА файла изображения на удаленном сервере"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Загрузка изображений с удаленного URL-адреса не включена"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Не удалось загрузить изображение из URL адреса"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "Неверный формат типа содержимого"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "Тип содержимого не найден"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "Тип содержимого не соответствует требуемому классу миксина"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -553,8 +553,8 @@ msgstr "Неверная физическая единица"
msgid "Not a valid currency code"
msgstr "Неверный код валюты"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Статус заказа"
@@ -562,21 +562,21 @@ msgstr "Статус заказа"
msgid "Parent Build"
msgstr "Родительский заказ на производство"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Включая варианты"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Включая варианты"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Включая варианты"
msgid "Part"
msgstr "Деталь"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Категория"
@@ -666,80 +666,80 @@ msgstr "Максимальная дата"
msgid "Exclude Tree"
msgstr "Исключить дерево"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Заказ на производство должен быть отменен перед удалением"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Расходник"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Необязательно"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Сборная деталь"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Отслеживается"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Тестируемая"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Невыполненные заказы"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Зарезервировано"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Потреблено"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Доступно"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "В заказе"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Заказ на производство"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Расположение"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Выход"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "Фильтрация по идентификатору исходящей складской позиции. Используйте 'null', чтобы найти несмонтированные элементы сборки."
@@ -779,9 +779,9 @@ msgstr "Целевая дата должна быть после даты нач
msgid "Build Order Reference"
msgstr "Ссылка на заказ на производство"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Ссылка на заказ"
msgid "SalesOrder to which this build is allocated"
msgstr "Заказ на продажу, которому принадлежит этот заказ на производство"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Место хранения комплектующих"
@@ -857,17 +857,17 @@ msgstr "Статус заказа на производство"
msgid "Build status code"
msgstr "Код статуса заказа на производство"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Код партии"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Код партии для продукции"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Дата создания"
@@ -887,7 +887,7 @@ msgstr "Целевая дата завершения"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Целевая дата для заказа на производства. Заказ будет просрочен после этой даты."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Дата завершения"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Пользователь, создавший этот заказ на производство"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Ответственный"
@@ -913,12 +913,12 @@ msgstr "Ответственный"
msgid "User or group responsible for this build order"
msgstr "Пользователь, ответственный за этот заказ на производство"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Внешняя ссылка"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Ссылка на внешний URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Приоритет этого заказа на производство"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Код проекта"
@@ -960,7 +960,7 @@ msgstr "Заказ на производство {build} был завершен
msgid "A build order has been completed"
msgstr "Заказ на производство был завершен"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Для отслеживаемых деталей должны быть указаны серийные номера"
@@ -976,23 +976,23 @@ msgstr "Продукция уже произведена"
msgid "Build output does not match Build Order"
msgstr "Продукция не совпадает с заказом на производство"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Количество должно быть больше нуля"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Количество не может быть больше количества продукции"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "Выход сборки не прошёл все необходимые тесты"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Сборка {serial} не прошла все необходимые тесты"
@@ -1001,18 +1001,18 @@ msgstr "Сборка {serial} не прошла все необходимые т
msgid "Cannot partially complete a build output with allocated items"
msgstr "Невозможно частично завершить выход сборки с распределёнными элементами"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Номер позиции для производства"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Объект производства"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Объект производства"
msgid "Quantity"
msgstr "Количество"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Требуемое количество для заказа на производство"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Количество израсходованного запаса"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Элемент производства должен указать продукцию, как главную деталь помеченную как отслеживаемая"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Выбранная складская позиция не соответствует позиции в BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr "Резервируемое количество должно быть больше нуля"
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Количество должно быть 1 для сериализованных запасов"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Резервируемое количество ({q}) не должно превышать доступное количество на складе ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Складская позиция перераспределена"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Резервируемое количество должно быть больше нуля"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Количество должно быть 1 для сериализованных запасов"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Выбранная складская позиция не соответствует позиции в BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Выделенное количество превышает доступный запас"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Складская позиция"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Исходная складская позиция"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Количество на складе для производства"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Установить в"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Целевая складская позиция"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Уровень сборки"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Наименование детали"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Название кода проекта"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Выход Продукции"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Продукция не совпадает с родительским заказом на производство"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Продукция не соответствует детали заказа на производство"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Эта продукция уже помечена как завершенная"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Сырье для этой продукции не полностью зарезервировано"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Введите количество продукции"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Для отслеживаемых деталей должно быть указано целочисленное количество"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Требуется целое количество, так как материал содержит отслеживаемые детали"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Серийные номера"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Введите серийные номера для продукции"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Местоположение склада для результата сборки"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Автоматически выделить серийные номера"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Автоматически зарезервировать необходимые элементы с соответствующими серийными номерами"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Следующие серийные номера уже существуют или недействительны"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Необходимо представить список выхода деталей"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Место хранения для списанной продукции"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Отменить резервирование"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Отменить все резервы запасов для списанной продукции"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Причина списания продукции"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Место хранения для завершенной продукции"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Разрешить неполное резервирование"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Завершить продукцию, даже если остатки не были полностью зарезервированы"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Израсходовать зарезервированные остатки"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Израсходовать складские позиции, которые были зарезервированы для этой продукции"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Удалить незавершенную продукцию"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Удалить всю незавершенную продукцию"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Запрещено"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Принять как поглощенный этим заказом на производство"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Отменить резерв, до завершения заказа на производство"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Перераспределенные запасы"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Как вы хотите обработать дополнительные складские позиции, назначенные для заказа на производство"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Некоторые складские позиции были перераспределены"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Разрешить не полное резервирование"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Подтвердите, что складские позиции не были полностью зарезервированы для этого заказа на производство"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Необходимые запасы не были полностью зарезервированы"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Разрешить незавершенные производимые детали"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Допустить, что требуемое кол-во продукции не завершено"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Требуемое количество деталей не было произведено"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Производственный заказ имеет незавершённые дочерние заказы"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Заказ на производство должен быть в стадии выполнения"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Заказ на производство имеет незавершенную продукцию"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Позиция для производства"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Выход продукции"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Продукция должна указывать на тот же производство"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Позиция для производства"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part должна указывать на ту же часть, что и заказ на производство"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Элемент должен быть в наличии"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Превышено доступное количество ({q})"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Продукция должна быть указан для резервирования отслеживаемых частей"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Продукция не может быть указана для резервирования не отслеживаемых частей"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Необходимо указать резервируемые элементы"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Место хранения, где будут зарезервированы детали (оставьте пустым, чтобы забрать их из любого места)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Исключить место хранения"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Исключить складские позиции из этого выбранного места хранения"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Обменный остаток"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Складские позиции в нескольких местах могут использоваться на взаимозаменяемой основе"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Заменить остатки"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Разрешить резервирование замещающих деталей"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Необязательные элементы"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Зарезервировать необязательные позиции BOM для заказа на производство"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Не удалось запустить задачу автораспределения"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Ссылка на спецификацию (BOM)"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID детали в спецификации (BOM)"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Название детали в спецификации (BOM)"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Сборка"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Деталь поставщика"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Зарезервированное количество"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Ссылка на сборку"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Название категории детали"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Отслеживание"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Унаследованные"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Есть варианты"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Позиция BOM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "В производстве"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "Запланировано к сборке"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Внешний склад"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Доступный запас"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Доступный запас заменителей"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Доступный запас вариантов"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "Потреблённое количество превышает выделенное количество"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Дополнительные примечания по расходу запаса"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "Элемент сборки должен ссылаться на правильный заказ на сборку"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "Дублирование выделения элемента сборки"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "Строка сборки должна ссылаться на правильный заказ на сборку"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "Дублирование выделения строки сборки"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "Должен быть указан хотя бы один элемент или строка"
@@ -1498,19 +1490,19 @@ msgstr "Просроченный заказ сборки"
msgid "Build order {bo} is now overdue"
msgstr "Заказ на производство {bo} просрочен"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Ссылка"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Файл"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "У пользователя нет прав для удаления этих вложений"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "У пользователя нет прав на удаление этого вложения"
@@ -1530,7 +1522,11 @@ msgstr "Не указаны действительные коды валют"
msgid "No plugin"
msgstr "Нет плагина"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Название кода проекта"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Обновлено"
@@ -1558,7 +1554,7 @@ msgstr "Описание проекта"
msgid "User or group responsible for this project"
msgstr "Пользователь или группа, ответственные за этот проект"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Ключ настроек"
@@ -1590,550 +1586,550 @@ msgstr "Значение не прошло проверку"
msgid "Key string must be unique"
msgstr "Строка ключа должна быть уникальной"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Пользователь"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Скидка распространяется на заданное количество"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Цена"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Цена за единицу для указанного количества"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Конечная точка"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Конечная точка, на которой принимается этот веб-хук"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Имя для этого веб-хука"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Активный"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Этот веб-хук активен?"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Токен"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Токен для доступа"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Секрет"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Общий ключ для HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID Сообщения"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Уникальный идентификатор этого сообщения"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Хост"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Хост, с которого было получено это сообщение"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Заголовок"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Заголовок этого сообщения"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Тело"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Текст этого сообщения"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Конечная точка, на которую было получено это сообщение"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Работал над"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Работа над этим сообщением завершена?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Код"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Заголовок"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Ссылка"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Опубликовано"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Автор"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Итого"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Читать"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Эта новость была прочитана?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Файл изображения"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Тип целевой модели для этого изображения"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "ID целевой модели для этого изображения"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Пользовательская единица измерения"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Символ единицы должен быть уникальным"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Имя единицы должно быть действительным идентификатором"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Название единицы"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Символ"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Обозначение единицы измерения (необязательно)"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Определение"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Определение единицы измерения"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Вложения"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Файл не найден"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Отсутствует внешняя ссылка"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Тип модели"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "Тип целевой модели для изображения"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Выберите файл для вложения"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Комментарий"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Описание вложения"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Дата загрузки"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Дата загрузки файла"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Размер файла"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Размер файла в байтах"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Указан недопустимый тип модели для вложения"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Пользовательское состояние"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Пользовательские состояния"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Группа статусов"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Группа статусов, которая будет дополнена пользовательским состоянием"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Логическое состояние"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Логическое состояние, соответствующее пользовательскому состоянию в бизнес-логике"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Значение"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Числовое значение, которое будет сохранено в базе данных"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Название состояния"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Метка"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Метка, которая будет отображаться на фронтенде"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Цвет"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Цвет отображения в интерфейсе"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Модель"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Модель, с которой связано это состояние"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Необходимо выбрать модель"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Необходимо выбрать ключ"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Логическое состояние должно быть выбрано"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Ключ должен отличаться от логического ключа"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Должен быть указан корректный класс ссылочного статуса"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Состояние должно отличаться от других логических состояний выбранного статуса"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "Логическое состояние должно быть из множества логических состояний выбранного статуса"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Имя должно отличаться от имен эталонного статуса"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Список выбора"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Списки выбора"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Название списка выбора"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Описание списка выбора"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Заблокирована"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Этот список выбора заблокирован?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Можно ли использовать этот список выбора?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Исходный плагин"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Плагин, который предоставляет список выбора"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Исходная строка"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Необязательная строка, определяющая источник, используемый для этого списка"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Запись по умолчанию"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Вариант по умолчанию для этого списка выбора"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Создано"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Дата и время создания списка выбора"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Последнее обновление"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Дата и время последнего обновления списка выбора"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Вариант списка выбора"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Варианты списка выбора"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Список выбора, к которому относится данный вариант"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Значение варианта списка выбора"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Метка для элемента списка выбора"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Описание варианта списка выбора"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Активен ли варианта списка выбора?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Шаблон параметра"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "Шаблоны параметров"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "У параметров-переключателей не может быть единицы измерения"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "У параметров-переключателей не может быть вариантов"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Варианты должны быть уникальными"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Имя шаблона параметров должно быть уникальным"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "Тип целевой модели для этого шаблона параметра"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Название параметра"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Единица измерения"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Физическая единица этого параметра"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Описание параметра"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Переключатель"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Этот параметр является переключателем?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Варианты"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Возможные варианты этого параметра (разделить запятой)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Список выбора для этого параметра"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Включено"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "Включен ли этот шаблон параметра?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "Параметр"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "Параметры"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Недопустимое значение параметра"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "Указан неверный тип модели для параметра"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "ID модели"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "ID целевой модели для этого параметра"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Шаблон"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "Шаблон параметра"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Данные"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Значение параметра"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Значение параметра"
msgid "Note"
msgstr "Заметка"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Опциональное поле записей"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Сканирование штрихкодов"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Данные штрихкода"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Пользователь, который сканировал штрих-код"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Метка времени"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Дата и время сканирования штрих-кода"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "URL-адрес, обработавший штрихкод"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Контекст"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Контекстные данные для сканирования штрих-кода"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Ответ"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Данные ответа от сканирования штрихкода"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Результат"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Сканирование штрихкода было успешным?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Произошла ошибка"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8: Удаление журнала электронной почты защищено. Установите INVENTREE_PROTECT_EMAIL_LOG в False, чтобы разрешить удаление."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "Сообщение электронной почты"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "Сообщения электронной почты"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Объявлено"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Отправлено"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Неудача"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Доставлено"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Подтверждено"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Входящее"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Исходящее"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Без ответа"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Отслеживать доставку"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Отслеживать прочтение"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Отслеживать клики"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "Глобальный идентификатор"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Идентификатор этого сообщения (может быть предоставлен внешней системой)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "ID цепочки"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Идентификатор темы этого сообщения (может быть предоставлен внешней системой)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Цепочка"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Связанная цепочка для этого сообщения"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr "Приоритет"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "Цепочка электронной почты"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "Цепочки электронной почты"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Ключ"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Уникальный ключ для этой цепочки (используется для идентификации цепочки)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Уникальный идентификатор этой цепочки"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Запущено внутренне"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Эта цепочка была начата внутри?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Дата и время создания цепочки"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Дата и время последнего обновления цепочки"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} отменен"
msgid "A order that is assigned to you was canceled"
msgstr "Заказ, назначенный вам, был отменён"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Полученные элементы"
@@ -2351,93 +2347,101 @@ msgstr "Товары были получены по заказу на закуп
msgid "Items have been received against a return order"
msgstr "Товары были получены по заказу на возврат"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Указывает, переопределена ли настройка переменной окружения"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Переопределить"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Запущен"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Ожидающие задачи"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Запланированные задания"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Невыполненные Задачи"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Код задачи"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Уникальный ID задачи"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Заблокировать"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Время блокировки"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Название задачи"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Функция"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Имя функции"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Аргументы"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Аргументы задачи"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Именованные аргументы"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Именованные аргументы задачи"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Имя файла"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Тип модели"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Пользователь не имеет разрешения создавать или редактировать вложения для этой модели"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "У пользователя нет разрешения на создание или редактирование параметров для этой модели"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Список выбора заблокирован"
@@ -2445,1128 +2449,1132 @@ msgstr "Список выбора заблокирован"
msgid "No group"
msgstr "Нет группы"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "URL сайта заблокирован настройками"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Требуется перезапуск"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Настройки были изменены, что требует перезапуска сервера"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Ожидаемые миграции"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Количество ожидаемых миграций базы данных"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Активные коды предупреждений"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Словарь активных кодов предупреждений"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "Идентификатор экземпляра"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Уникальный идентификатор для этого экземпляра InvenTree"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "ID объявления"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "Сообщить ID экземпляра сервера в информации о состоянии сервера (без аутентификации)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Название сервера"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Текстовое описание сервера"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Название инстанса"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Имя сервера в заголовке"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Ограничить отображение `О...`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Показать `О...` только суперпользователям"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Название компании"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Внутреннее название компании"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Базовая ссылка"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Базовая ссылка для экземпляра сервера"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Валюта по умолчанию"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Выберите базовую валюту для расчета цены"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Поддерживаемые валюты"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Список поддерживаемых кодов валют"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Интервал обновления курса валют"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Как часто обновлять курс валют (установите \"ноль\", чтобы выключить)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "дней"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Плагин обновления валют"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Модуль обновления валюты"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Скачать по ссылке"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Разрешить загрузку удаленных изображений и файлов по внешнему URL"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Ограничение размера загрузки"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Максимально допустимый размер загрузки для удалённого изображения"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-Agent, используемый для загрузки из URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Позволяет переопределить user-Agent, используемый для загрузки изображений и файлов с внешнего URL (оставьте пустым по умолчанию)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Строгая проверка URL-адреса"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Требуется спецификация схемы при проверке URL-адресов"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Интервал проверки обновлений"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Как часто проверять наличие обновлений (установите ноль чтобы выключить)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Автоматическое резервное копирование"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Включить автоматическое резервное копирование базы данных и медиа-файлов"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Интервал резервного копирования"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Укажите количество дней между событиями автоматического резервного копирования"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Интервал удаления задачи"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Результаты фоновых задач будут удалены после указанного количества дней"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Интервал удаления журнала ошибок"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Журналы ошибок будут удалены после указанного количества дней"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Интервал удаления уведомления"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Уведомления пользователя будут удалены после указанного количества дней"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "Интервал удаления электронной почты"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "Сообщения электронной почты будут удалены через указанное количество дней"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "Защитить журнал электронной почты"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "Предотвращать удаление записей журнала электронной почты"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Поддержка штрих-кодов"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Включить поддержку сканера штрих-кодов в веб-интерфейсе"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Сохранять результаты сканирования штрихкодов"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Сохранять результаты сканирования штрихкодов в базе данных"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Максимальное количество сохранённых сканирований штрихкодов"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Максимальное число результатов сканирования штрихкодов для хранения"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Задержка сканирования штрих-кода"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Время задержки обработки штрих-кода"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Поддержка веб-камер штрих-кодов"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Разрешить сканирование штрих-кода через веб-камеру в браузере"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Показать данные штрих-кода"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Отображать данные штрих-кода в браузере в виде текста"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Плагин генерации штрих-кода"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Плагин для использования внутренней генерации данных штрих-кодов"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Ревизия детали"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Включить поле ревизии для элемента"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Только ревизия сборки"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Разрешить ревизии только для сборочных деталей"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Разрешить удаление из заказа"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Разрешить удаление частей, которые используются в заказе"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Регулярное выражение IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Шаблон регулярного выражения для сопоставления IPN детали"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Разрешить повторяющиеся IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Разрешить нескольким элементам использовать один и тот же IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Разрешить редактирование IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Разрешить изменение значения IPN при редактировании детали"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Скопировать данные BOM детали"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Копировать данные BOM по умолчанию при дублировании детали"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Скопировать данные параметров детали"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Копировать данных параметров по умолчанию при дублировании детали"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Скопировать данные тестирования детали"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Копировать данные тестирования по умолчанию при дублировании детали"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Скопировать параметры по шаблону категории"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Копировать параметры по шаблону категории при создании детали"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "По умолчанию детали являются шаблонами"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "По умолчанию детали могут быть собраны из других компонентов"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Компонент"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "По умолчанию детали могут использоваться в качестве суб-компонентов"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Можно купить"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "По умолчанию детали являются отслеживаемыми"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Можно продавать"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Детали продаются по умолчанию"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "По умолчанию детали являются отслеживаемыми"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Виртуальная"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Детали являются виртуальными по умолчанию"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Показывать связанные детали"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Отображать связанные детали для элемента"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Начальные данные о запасах"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Разрешить создание начального запаса при добавлении новой детали"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Исходные данные о поставщике"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Разрешить создание исходных данных о поставщике при добавлении новой детали"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Формат отображения детали"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Формат для отображения имени детали"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Значок раздела по умолчанию"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Значок категории по умолчанию (пустой означает отсутствие значка)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Минимальные Цены Десятичные Значки"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Минимальное количество десятичных знаков при отображении данных о ценах"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Макс. Цены десятичные знаки"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Минимальное количество десятичных знаков при отображении данных о ценах"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Использовать цены поставщика"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Включить разницу цен поставщиков при расчетах цен"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Изменить историю покупки"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Ценообразование по историческим заказам на поставку отменяет различия в ценах поставщиков"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Использовать цены из складских позиций"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Использовать расценки из ручного ввода данных о запасах для расчета цен"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Возраст цен складских позиций"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Исключить складские позиции старше указанного количества дней с расчёта цен"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Использовать варианты цен"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Включить разницу цен поставщиков при расчетах цен"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Только Активные Варианты"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Использовать только активные запчасти для расчета стоимости варианта"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "Автоматическое обновление цен"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "Автоматически обновлять цены деталей при изменении внутренних данных"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Интервал пересчета цен"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Количество дней до автоматического обновления цены"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Внутренние цены"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Разрешить внутренние цены для частей"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Переопределение внутренней цены"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "При наличии внутренних цен переопределить ценовой диапазон"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Включить печать этикеток"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Включить печать этикеток из веб-интерфейса"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Изображение меток DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Разрешение DPI при создании файлов изображений для печати этикеток плагинов"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Включить отчеты"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Включить генерацию отчетов"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Режим отладки"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Генерировать отчеты в режиме отладки (вывод HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Журнал ошибок отчета"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Журнал ошибок, которые возникают при создании отчетов"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Размер страницы"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Размер страницы по умолчанию для PDF отчетов"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Принудительное применение единиц измерения параметров"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Если введены единицы, значения параметра должны соответствовать указанным единицам измерения"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Глобально уникальные серийные номера"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Серийные номера для складских позиций должны быть уникальными глобально"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Удалить исчерпанный запас"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Определяет поведение по умолчанию, когда складская позиция заканчивается"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Код партии Шаблона"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Шаблон для создания кодов партии по умолчанию для складских позиций"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Срок годности Запасов"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Включить функцию истечения срока годности"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Использовать просроченные остатки в производстве"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Разрешить продажу просроченных запасов"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Время Залежалости Запасов"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Количество дней перед тем как складская единица будет считаться просроченной"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Использовать просроченные остатки в производстве"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Разрешить использовать просроченные остатки в производстве"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Контроль за собственными запасами"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Разрешить владельцу контролировать расположение складов и номенклатуры"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Значок местоположения по умолчанию"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Значок местоположения склада по умолчанию (пустой означает отсутствие значка)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Показать установленные складские позиции"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Отображать установленные складские позиции в складских таблицах"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Проверять спецификацию при установке изделий"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Установленные единица хранения должны присутствовать в спецификации для родительской детали"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Разрешить передачу товара, отсутствующего на складе"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Разрешить перемещение товаров, которых нет на складе, между складами"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Паттерн ссылки заказа на производство"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Поле требуемого паттерна для создания ссылки заказа на производство"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Требуется ответственный владелец"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Ответственный владелец должен быть назначен для каждого заказа"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Требовать активную деталь"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Запрещать создание заказов на сборку для неактивных деталей"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Требовать заблокированную деталь"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Запрещать создание заказов на сборку для разблокированных деталей"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Требовать валидную спецификацию"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Запрещать создание заказов на сборку, пока спецификация не будет подтверждена"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Требовать закрытия дочерних заказов"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Запрещать завершение заказа на сборку, пока не закрыты все дочерние заказы"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "Сторонний заказ на сборку"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "Включить функциональность сторонних заказов на сборку"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Блокировать до прохождения тестов"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Запретить вывод сборки до тех пор, пока не пройдут все необходимые тесты"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Включить заказы на возврат"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Включите функцию заказа на возврат в пользовательском интерфейсе"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Шаблон заказа на возврат товара"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Необходимый шаблон для создания поля «Возврат заказа»"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Редактировать завершенные возвратные заказы"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Разрешить редактирование возвращенных заказов после их завершения"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Шаблон заказа на возврат товара"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Необходимый шаблон для создания поля «Возврат заказа»"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Отгрузка по умолчанию для заказа на продажу"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Включить создание отгрузки по умолчанию для заказов на продажу"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Редактирование завершённых заказов на продажу"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Разрешить редактирование заказов на продажу после их отправки или завершения"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr "Отгрузка требует проверки"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr "Запрещать завершение отгрузок, пока товары не проверены"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Отмечать отправленные заказы как завершённые"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Заказы на продажу, помеченные как отгруженные, будут автоматически завершены, минуя статус 'отгружено'"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Шаблон ссылки заказа на закупку"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Требуемый шаблон для генерации поля ссылки заказа на закупку"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Редактировать завершённые заказы на закупку"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Разрешить редактирование заказов после их отправки или завершения"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "Конвертировать валюту"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "Преобразовывать стоимость товара в базовую валюту при поступлении на склад"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Автоматически выполнять заказы на закупку"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Автоматически отмечать заказы на закупку как завершённые при получении всех позиций"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Включить функцию восстановления пароля"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Включить функцию восстановления пароля на странице входа"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Разрешить регистрацию"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Включить самостоятельную регистрацию пользователей на странице входа"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Включить SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Включить SSO на странице входа"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Включить регистрацию через SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Включить самостоятельную регистрацию пользователей через SSO на странице входа"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Включить синхронизацию групп через SSO"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Включить синхронизацию групп InvenTree с группами, предоставляемыми IdP"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "Ключ группы SSO"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Имя атрибута группы, предоставленного провайдером идентификации"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Отображение групп SSO"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Отображение от групп SSO к локальным группам InvenTree. Если локальная группа не существует, она будет создана."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Удалять группы вне SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Удалять ли группы, назначенные пользователю, если они не поддерживаются провайдером идентификации. Отключение этой настройки может привести к проблемам безопасности"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Необходимо указать EMail"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Требовать электронную почту при регистрации"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Автозаполнение пользователей SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Автоматически заполнять данные пользователя из аккаунта SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Написать дважды"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "При регистрации дважды спрашивать адрес электронной почты"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Пароль дважды"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "При регистрации запросить пароль у пользователей дважды"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Разрешенные домены"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Ограничить регистрацию определёнными доменами (через запятую, начиная с @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Группа при новой регистрации"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Группа, на которую назначаются новые пользователи при регистрации. Если включена синхронизация группы SSO, эта группа задается только в том случае, если ни одна группа не может быть назначена через IdP."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Принудительное MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Пользователи должны использовать многофакторную безопасность."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Проверять плагины при запуске"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Проверять, что все плагины установлены при запуске — включать в контейнерных средах"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Проверка обновлений плагинов"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Включить периодическую проверку обновлений установленных плагинов"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Включить интеграцию URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Разрешить плагинам добавлять маршруты URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Включить интеграцию навигации"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Разрешить плагинам интегрироваться в навигацию"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Включить интеграцию приложений"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Разрешить плагинам добавлять приложения"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Включить интеграцию расписаний"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Разрешить плагинам запускать запланированные задачи"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Включить интеграцию событий"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Разрешить плагинам реагировать на внутренние события"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Включить интеграцию интерфейса"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Разрешить плагинам интегрироваться в пользовательский интерфейс"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "Включить интеграцию почты"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "Разрешить плагинам обрабатывать исходящую и входящую почту"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "Включить коды проекта"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "Включить коды проекта для отслеживания проектов"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "Включить историю запасов"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "Включить функцию записи истории уровней и стоимости запасов"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Исключить сторонний склад"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "Исключать складские позиции во внешних локациях из расчёта истории запасов"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Автоматический период инвентаризации"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "Количество дней между автоматическими записями истории запасов"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "Удалять старые записи истории запасов"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "Удалять записи истории запасов старше указанного количества дней"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "Интервал удаления истории запасов"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "Записи истории запасов будут удалены через указанное количество дней"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Показывать полные имена пользователей"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Отображать полные имена пользователей вместо логинов"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "Отображать профили пользователей"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "Отображать профили пользователей на их странице профиля"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Добавлять данные об испытательном оборудовании"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Добавлять данные об испытательном оборудовании в результаты тестирования"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr "Включить пинг машин"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr "Включить периодическую задачу пинга зарегистрированных машин для проверки их статуса"
@@ -3596,11 +3604,11 @@ msgstr "Отображение PDF-этикетки в браузере вмес
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "Сканирование штрих-кодов в формах"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "Разрешить ввод со сканера штрихкодов в поля формы"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3868,7 +3876,7 @@ msgstr "Сохранять последние использованные пе
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "Все модели"
#: common/validators.py:63
msgid "No attachment model type provided"
@@ -3911,29 +3919,29 @@ msgstr "Деталь активна"
msgid "Manufacturer is Active"
msgstr "Производитель активен"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Поставляемая деталь активна"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Внутренняя деталь активна"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Поставщик активен"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Производитель"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Компания"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Есть запас"
@@ -3969,7 +3977,7 @@ msgstr "Контактный телефон"
msgid "Contact email address"
msgstr "Электронная почта контакта"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Контакт"
@@ -4022,255 +4030,247 @@ msgstr "Налоговый идентификатор"
msgid "Company Tax ID"
msgstr "Налоговый идентификатор компании"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Адрес"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Адреса"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Выберите компанию"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Заголовок адреса"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Заголовок, описывающий запись адреса"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Основной адрес"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Указать основным адресом"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Строка 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Адресная строка 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Строка 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Адресная строка 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Почтовый индекс"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Город/Регион"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Почтовый индекс, город/регион"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Регион/Область"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Штат или провинция"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Страна"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Страна адреса"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Записи отправления"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Записи для курьера"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Внутренние записи отправления"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Записи отправления для внутреннего пользования"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Ссылка на адресную информацию (внешняя)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Производитель детали"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Базовая деталь"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Выберите деталь"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Выберите производителя"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "Артикул производителя"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Артикул производителя"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "Ссылка на сайт производителя"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Описание детали производителя"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Единицы измерения упаковки должны быть совместимы с единицами базовой детали"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Единицы упаковки должны быть больше нуля"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Связанная деталь производителя должна ссылаться на ту же базовую деталь"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Поставщик"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Выберите поставщика"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Артикул поставщика"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Является ли эта поставляемая деталь активной?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Выберите производителя части"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "Ссылка на сайт поставщика"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Описание детали поставщика"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "базовая стоимость"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Минимальная плата (например, складская)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Упаковка"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Упаковка детали"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Количество в упаковке"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Общее количество, поставляемое в одной упаковке. Оставьте пустым для отдельных элементов."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "множественные"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Кратность заказа"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Количество, доступное у поставщика"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Доступность обновлена"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Дата последнего обновления данных о доступности"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Ценовой порог поставщика"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "Возвращает строковое представление основного адреса. Это свойство существует для обратной совместимости."
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Валюта по умолчанию для этого поставщика"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Название компании"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "На складе"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr "Ценовые пороги"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "Произошла ошибка при экспорте данных"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "Плагин экспорта данных вернул неправильный формат данных"
@@ -4418,7 +4418,7 @@ msgstr "Исходные данные строки"
msgid "Errors"
msgstr "Ошибки"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Корректный"
@@ -4530,7 +4530,7 @@ msgstr "Количество копий для печати каждой эти
msgid "Connected"
msgstr "Подключен"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Неизвестно"
@@ -4662,7 +4662,7 @@ msgstr "Максимальное значение для типа прогрес
msgid "Order Reference"
msgstr "Ссылка на заказ"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Невыполненный"
@@ -4670,7 +4670,7 @@ msgstr "Невыполненный"
msgid "Has Project Code"
msgstr "Есть код проекта"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Создал"
@@ -4710,11 +4710,11 @@ msgstr "Целевая дата после"
msgid "Has Pricing"
msgstr "Имеет цену"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Завершено до"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Завершено после"
@@ -4722,40 +4722,40 @@ msgstr "Завершено после"
msgid "External Build Order"
msgstr "Сторонний заказ на сборку"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Заказ"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Заказ выполнен"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Внутренняя деталь"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Заказ в ожидании"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Завершённые"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Есть отгрузка"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Заказ на закупку"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Заказ на закупку"
msgid "Sales Order"
msgstr "Заказ на продажу"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Общая стоимость"
msgid "Total price for this order"
msgstr "Общая стоимость этого заказа"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Валюта заказа"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Валюта заказа (оставьте пустым для использования валюты по умолчанию для компании)"
@@ -4805,240 +4805,240 @@ msgstr "Дата начала должна быть до целевой даты
msgid "Address does not match selected company"
msgstr "Адрес не соответствует выбранной компании"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Описание заказа (дополнительно)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Выберите код проекта для этого заказа"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Ссылка на внешнюю страницу"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Начальная дата"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "Запланированная начальная дата этого заказа"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Целевая дата"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Ожидаемая дата доставки заказа. После этой даты заказ будет считаться просроченным."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Дата создания"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Дата выдачи заказа"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Пользователь или группа, ответственная за этот заказ"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Контактное лицо по данному заказу"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Адрес компании по этому заказу"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Ссылка на заказ"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Статус"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Статус заказа на закупку"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Компания, в которой детали заказываются"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Номер у поставщика"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Номер заказа у поставщика"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "получил"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Дата завершения заказа"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Место хранения"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Место хранения для полученных позиций"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Поставщик детали должен совпадать с поставщиком заказа на закупку"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Позиция не соответствует заказу на закупку"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "В позиции отсутствует связанная деталь"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Количество должно быть положительным числом"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Покупатель"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Компания, которой детали продаются"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Статус заказа на продажу"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Ссылка клиента"
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Код ссылки на заказ клиента"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Дата отгрузки"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "Отправлено"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Заказ уже выполнен"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Заказ уже отменен"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Только открытый заказ может быть отмечен как завершённый"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Заказ не может быть завершён, так как есть незавершённые отгрузки"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "Заказ не может быть завершён, так как есть незавершённые распределения"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Заказ не может быть завершён, так как есть незавершённые позиции"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "Заказ заблокирован и не может быть изменён"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Количество"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Номер позиции"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Записи о позиции"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Целевая дата этой позиции (оставьте пустой, чтобы использовать целевую дату заказа)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Описание позиции (необязательно)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Дополнительный контекст для этой строки"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Цена за единицу"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Позиция заказа на закупку"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Поставляемая деталь должна соответствовать поставщику"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "Заказ на сборку должен быть отмечен как внешний"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "Заказы на сборку могут быть связаны только со сборочными деталями"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "Деталь заказа на сборку должна соответствовать детали позиции"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Деталь поставщика"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Получено"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Количество полученных предметов"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Закупочная цена"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Закупочная цена"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "Внешний заказ на сборку, который будет выполнен этой позицией"
@@ -5102,8 +5102,8 @@ msgstr "Проверн"
msgid "User who checked this shipment"
msgstr "Пользователь, проверивший эту отгрузку"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Отправление"
@@ -5164,7 +5164,11 @@ msgstr "Невозможно распределить запас к позици
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Количество распределения не может превышать количество на складе"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Резервируемое количество должно быть больше нуля"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Количество должно быть 1 для сериализированных складских позиций"
@@ -5172,7 +5176,7 @@ msgstr "Количество должно быть 1 для сериализир
msgid "Sales order does not match shipment"
msgstr "Заказ на продажу не соответствует отгрузке"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Отгрузка не соответствует заказу на продажу"
@@ -5256,247 +5260,247 @@ msgstr "Стоимость, связанная с возвратом или ре
msgid "Return Order Extra Line"
msgstr "Дополнительная позиция заказа на возврат"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID заказа"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID заказа для дублирования"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Копировать позиции"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Копировать позиции из исходного заказа"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Копировать дополнительные позиции"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Копировать дополнительные позиции из исходного заказа"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Позиции"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Завершённые позиции"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Дублировать заказ"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Указать параметры для дублирования этого заказа"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Недействительный ID заказа"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Имя поставщика"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Заказ не может быть отменён"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Разрешить закрывать заказ с незавершёнными позициями"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "В заказе есть незавершённые позиции"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Заказ не открыт"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Автоматическая цена"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Автоматически рассчитывать закупочную цену на основе данных детали поставщика"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Валюта заказа на закупку"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Объединять элементы"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Объединять в одну позицию элементы, у которых одинаковая деталь, место хранения и целевая дата"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Артикул"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Внутренний артикул детали"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Внутреннее название детали"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Необходимо указать поставляемую деталь"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Необходимо указать заказ на закупку"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Поставщик должен соответствовать заказу на закупку"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Заказ на закупку должен соответствовать поставщику"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Позиция"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Выберите место назначения для полученных элементов"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Введите код партии для поступающих складских позиций"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Истекает"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "Введите дату истечения срока годности для поступающих складских единиц"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Введите серийные номера для входящих складских позиций"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Переопределить информацию об упаковке для поступающих складских единиц"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Дополнительная заметка для поступающих складских единиц"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Штрих-код"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Сканированный штрих-код"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Штрихкод уже используется"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Необходимо предоставить позиции"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Необходимо указать место назначения"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Предоставленные значения штрихкодов должны быть уникальными"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Отгрузки"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Выполненные отгрузки"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Валюта цены продажи"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Выделенные элементы"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Информация об отгрузке не предоставлена"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Позиция не связана с этим заказом"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Количество должно быть положительным"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Введите серийные номера для резервирования"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Отгрузка уже отправлена"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Отгрузка не связана с этим заказом"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Совпадений для следующих серийных номеров не найдено"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Следующие серийные номера недоступны"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Позиция заказа на возврат"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Позиция не соответствует заказу на возврат"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Позиция уже получена"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Предметы могут быть получены только по заказам, которые находятся в процессе выполнения"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Количество для возврата"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Валюта цены позиции"
@@ -5647,7 +5651,7 @@ msgstr "Компонент тестируется"
msgid "Uses"
msgstr "Использования"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Категория детали"
@@ -5656,7 +5660,7 @@ msgstr "Категория детали"
msgid "Part Categories"
msgstr "Категория детали"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Место хранения по умолчанию"
@@ -5664,7 +5668,7 @@ msgstr "Место хранения по умолчанию"
msgid "Default location for parts in this category"
msgstr "Место хранения по умолчанию для деталей этой категории"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Структура"
@@ -5680,12 +5684,12 @@ msgstr "Ключевые слова по умолчанию"
msgid "Default keywords for parts in this category"
msgstr "Ключевые слова по умолчанию для деталей этой категории"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Значок"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Значок (необязательно)"
@@ -5693,655 +5697,655 @@ msgstr "Значок (необязательно)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Вы не можете сделать эту категорию деталей структурной, потому что некоторые детали уже назначены ей!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Шаблон параметров категории деталей"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Значение по умолчанию"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Значение параметра по умолчанию"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Детали"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
-msgstr ""
+msgstr "Нельзя удалить параметры заблокированной детали"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
-msgstr ""
+msgstr "Нельзя изменить параметры заблокированной детали"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Нельзя удалить эту деталь, так как она заблокирована"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Нельзя удалить эту деталь, так как она ещё активна"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Нельзя удалить эту деталь, так как она используется в сборке"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Деталь '{self}' не может быть использована в спецификации для '{parent}' (рекурсивно)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Деталь '{parent}' используется в спецификации для '{self}' (рекурсивно)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN должен соответствовать регулярному выражению {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Деталь не может быть ревизией самой себя"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Нельзя создать ревизию детали, которая уже является ревизией"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Необходимо указать код ревизии"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Ревизии разрешены только для сборочных деталей"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Нельзя сделать ревизию шаблонной детали"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "Родительская деталь должна указывать на тот же шаблон"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Складская позиция с этим серийным номером уже существует"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Дублирующий IPN не разрешён в настройках детали"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Дублирующая ревизия детали уже существует."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Деталь с таким именем, внутренним артикулом и ревизией уже существует."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Детали не могут быть назначены структурным категориям!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Наименование детали"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Шаблон"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Эта деталь является шаблоном?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Эта деталь является разновидностью другой детали?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Разновидность"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Описание детали (необязательно)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Ключевые слова"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Ключевые слова для улучшения видимости в результатах поиска"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Категория"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "Внутренний артикул"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Ревизия или серийный номер детали"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Ревизия"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Является ли эта деталь ревизией другой детали?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Ревизия от"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Где обычно хранится эта деталь?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Поставщик по умолчанию"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Поставляемая деталь по умолчанию"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Срок действия по умолчанию"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Срок годности (в днях) для складских позиций этой детали"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Минимальный запас"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Минимально допустимый складской запас"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Единицы измерения этой детали"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Может ли эта деталь быть создана из других деталей?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Может ли эта деталь использоваться для создания других деталей?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Можно ли в этой детали записывать результаты тестов?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Может ли эта деталь быть продана покупателям?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Эта деталь активна?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Заблокированные детали нельзя редактировать"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Эта деталь виртуальная, как программный продукт или лицензия?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "Спецификация подтверждена"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "Валидна ли спецификация для этой детали?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Контрольная сумма BOM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Сохранённая контрольная сумма спецификации"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "BOM проверил"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Дата проверки BOM"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Создатель"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Ответственный владелец этой детали"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Продать несколько"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Валюта, используемая для кэширования расчётов цен"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Минимальная Стоимость BOM"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Минимальная стоимость компонентных деталей"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Максимальная Стоимость BOM"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Максимальная стоимость компонентных деталей"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Минимальная стоимость закупки"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Минимальная историческая стоимость закупки"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Максимальная стоимость закупки"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Максимальная историческая стоимость закупки"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Минимальная внутренняя цена"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Минимальная стоимость на основе внутренних ценовых уровней"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Максимальная внутренняя цена"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Максимальная стоимость на основе внутренних ценовых уровней"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Минимальная цена поставщика"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Минимальная цена детали от внешних поставщиков"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Максимальная цена поставщика"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Максимальная цена детали от внешних поставщиков"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Минимальная стоимость варианта"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Расчётная минимальная стоимость вариантов деталей"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Максимальная стоимость варианта"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Расчётная максимальная стоимость вариантов деталей"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Минимальная Стоимость"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Переопределить минимальную стоимость"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Максимальная Стоимость"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Переопределить максимальную стоимость"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Расчётная общая минимальная стоимость"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Расчётная общая максимальная стоимость"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Минимальная цена продажи"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Минимальная цена продажи на основе ценовых уровней"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Максимальная цена продажи"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Максимальная цена продажи на основе ценовых уровней"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Минимальная стоимость продажи"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Минимальная историческая цена продажи"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Максимальная стоимость продажи"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Максимальная историческая цена продажи"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Деталь для инвентаризации"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Количество элементов"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Количество отдельных складских позиций на момент инвентаризации"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Общий доступный запас на момент инвентаризации"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Дата"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Дата проведения инвентаризации"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Минимальная стоимость запасов"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Оценочная минимальная стоимость имеющихся запасов"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Максимальная стоимость запасов"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Оценочная максимальная стоимость имеющихся запасов"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Цена продажи детали по порогу"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Шаблон теста детали"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Недопустимое имя шаблона — должно содержать хотя бы один буквенно-цифровой символ"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Шаблоны тестов можно создавать только для тестируемых деталей"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Шаблон теста с тем же ключом уже существует для детали"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Название теста"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Введите имя для теста"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Ключ теста"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Упрощённый ключ для теста"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Описание теста"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Введите описание для этого теста"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Активен ли данный тест?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Необходим"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Необходимо ли пройти этот тест?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Требуется значение"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Требуется ли значение для этого теста при добавлении результата?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Требуются вложения"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Требуется ли прикреплять вложение в виде файла при добавлении результатов теста?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Допустимые варианты данного теста(через запятую)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "Пункт спецификации нельзя изменить — сборка заблокирована"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "Пункт спецификации нельзя изменить — вариант сборки заблокирован"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Выберите родительскую деталь"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Суб-деталь"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Выбрать деталь для использования в BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Количество элементов в спецификации"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Эта позиция спецификации необязательна"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Эта позиция - расходник (она не отслеживается в заказах на производство)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "Количество для подготовки"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "Дополнительное требуемое количество для сборки, учитывающее потери при подготовке"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "Потери"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "Оценочные потери для сборки, выраженные в процентах (0–100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "Округление до кратности"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "Округлять требуемое производственное количество до ближайшего кратного этого значения"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Ссылка на позицию спецификации"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Заметка о позиции в спецификации"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Контрольная сумма"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Контрольная сумма строки спецификации"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Проверен"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Этот пункт спецификации подтверждён"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Наследуется"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Позиция спецификации наследуется разновидностями детали"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Эту позицию можно заменять деталями, которые находятся на складе"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Для отслеживаемых деталей количество должно быть целым числом"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Необходимо указать поддеталь"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Замена пункта спецификации"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Деталь для замены не может быть такой же, как основная деталь"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Позиция BOM-родителя"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Замена детали"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Деталь 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Деталь 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Выберите связанную деталь"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Заметка для данной связи"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Нельзя создать отношение детали с самой собой"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Дублирующее отношение уже существует"
@@ -6465,203 +6469,199 @@ msgstr "Деталь производителя с данным артикуло
msgid "Supplier part matching this SKU already exists"
msgstr "Деталь поставщика с данным артикулом уже существует"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Название категории"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Производится"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "Количество этой детали, находящееся в производстве"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "Оставшееся количество этой детали, запланированное к сборке"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Складские позиции"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Ревизии"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Поставщики"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Общий запас"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Нераспределённый запас"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Запас вариантов"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Дублировать деталь"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Копировать начальные данные из другой детали"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Начальный запас"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Создавать деталь с начальным количеством на складе"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Информация о поставщике"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Добавить начальную информацию о поставщике для этой детали"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Копировать параметры категории"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Копировать шаблоны параметров из выбранной категории деталей"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Существующее изображение"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Имя файла существующего изображения детали"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Файл изображения не существует"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Проверить всю спецификацию"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Можно произвести"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "Требуется для заказов на сборку"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "Выделено для заказов на сборку"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "Требуется для заказов на продажу"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "Выделено для заказов на продажу"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Минимальная цена"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Переопределить рассчитанное значение минимальной цены"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Валюта минимальной цены"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Максимальная цена"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Переопределить рассчитанное значение максимальной цены"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Валюта максимальной цены"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Обновить"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Обновить цены для этой детали"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Не удалось конвертировать из предоставленных валют в {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Минимальная цена не должна превышать максимальную цену"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Максимальная цена не должна быть меньше минимальной"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Выберите родительскую сборку"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Выберите деталь, которая является компонентом"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Выберите деталь, из которой копировать спецификацию"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Удалить существующие данные"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Удалить существующие пункты спецификации перед копированием"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Включая наследуемые"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Включать пункты спецификации, унаследованные от шаблонных деталей"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Пропустить некорректные строки"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Включите эту опцию, чтобы пропускать недопустимые строки"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Копировать детали-заменители"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Копировать детали-заменители при дублировании пунктов спецификации"
@@ -6732,108 +6732,108 @@ msgstr "Действие не указано"
msgid "No matching action found"
msgstr "Соответствующее действие не найдено"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Не найдено совпадений для данных штрих-кода"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Найдено совпадение по штрих-коду"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Модель не поддерживается"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Экземпляр модели не найден"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Штрихкод соответствует существующему элементу"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Не найдено соответствующих данных детали"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Не найдено соответствующих поставляемых деталей"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Найдено несколько соответствующих поставляемых деталей"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Плагин, соответствующий данным штрихкода, не найден"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Соответствующая поставляемая деталь"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Предмет уже был получен"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Нет совпадения плагина для штрихкода поставщика"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Найдено несколько соответствующих позиций"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Не найдено соответствующей позиции"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Заказ на продажу не указан"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Штрих-код не соответствует существующим складским позициям"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Складская позиция не соответствует позиции"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Недостаточно запаса"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Складская позиция зарезервирована заказом на продажу"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Недостаточно информации"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Найден соответствующий элемент"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Поставляемая деталь не соответствует позиции"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Позиция уже завершена"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Для получения позиции требуется дополнительная информация"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Полученная позиция заказа на закупку"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Не удалось получить позицию"
@@ -6972,7 +6972,7 @@ msgstr "Предоставляет встроенную поддержку шт
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr "Выпускать задатированные заказы"
msgid "Automatically issue orders that are backdated"
msgstr "Автоматически выпускать заказы с прошедшей датой"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Уровни"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "Количество уровней для экспорта — установите ноль, чтобы экспортировать все уровни спецификации"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "Общее количество"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "Включать общее количество каждой детали в спецификацию"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "Данные о запасах"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "Включать данные о запасах детали"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "Данные о ценах"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "Включать данные о цене детали"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "Данные о поставщиках"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "Включать данные о поставщиках"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "Данные о производителях"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "Включать данные о производителях"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "Данные о заменителях"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "Включать данные о детях-заменителях"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "Данные о параметрах"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "Включать данные о параметрах детали"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "Экспорт многоуровневой спецификации"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "Предоставляет поддержку экспорта многоуровневых спецификаций"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "Уровень спецификации"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "Замена {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "Поставщик {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "Артикул поставщика {n}"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "Поставщик {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "Производитель {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "Производитель {n} MPN"
@@ -7189,19 +7189,19 @@ msgstr "Предоставляет поддержку экспорта данн
#: plugin/builtin/exporter/parameter_exporter.py:16
msgid "Exclude Inactive"
-msgstr ""
+msgstr "Исключить неактивные"
#: plugin/builtin/exporter/parameter_exporter.py:17
msgid "Exclude parameters which are inactive"
-msgstr ""
+msgstr "Исключить параметры, которые неактивны"
#: plugin/builtin/exporter/parameter_exporter.py:29
msgid "Parameter Exporter"
-msgstr ""
+msgstr "Экспортёр параметров"
#: plugin/builtin/exporter/parameter_exporter.py:30
msgid "Exporter for model parameter data"
-msgstr ""
+msgstr "Экспортёр данных параметров модели"
#: plugin/builtin/exporter/stocktake_exporter.py:25
msgid "Include External Stock"
@@ -7354,11 +7354,11 @@ msgstr "Печать этикеток на машине InvenTree"
msgid "Provides support for printing using a machine"
msgstr "Предоставляет поддержку печати с использованием машины"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "последнее использование"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Параметры"
@@ -8072,7 +8072,7 @@ msgstr "Всего"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Серийный номер"
@@ -8142,7 +8142,7 @@ msgstr "Файл изображения не найден"
msgid "part_image tag requires a Part instance"
msgstr "Тег part_image требует экземпляр детали"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "Тег company_image требует экземпляр компании"
@@ -8158,7 +8158,7 @@ msgstr "Фильтровать по местоположениям верхне
msgid "Include sub-locations in filtered results"
msgstr "Включать подместоположения в отфильтрованные результаты"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Основной склад"
@@ -8311,314 +8311,314 @@ msgstr "Типы местоположения склада"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Значок по умолчанию для мест хранения с невыбранным значком (необязательно)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Место хранения"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Места хранения"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Владелец"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Выберите владельца"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Складские позиции не могут находиться в структурных местах хранения, но могут находиться в дочерних местах хранения."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Внешний"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Это сторонний склад"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Тип места хранения"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Тип места хранения данного склада"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Вы не можете сделать это место хранение структурным, потому, что некоторые складские позиции уже находятся в нем!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "{field} не существует"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Необходимо указать деталь"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Складские позиции не могут находиться в структурных местах хранения!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Складская позиция не может быть создана для виртуальных деталей"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Тип детали ('{self.supplier_part.part}') должен быть {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Количество должно быть 1 для элемента с серийным номером"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Серийный номер нельзя задать, если количество больше 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Элемент не может принадлежать сам себе"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Элемент должен иметь ссылку на производство, если is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Ссылка на производство не указывает на тот же элемент"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Складская позиция"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Базовая деталь"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Выберите соответствующего поставщика детали для этой складской позиции"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Где находится эта складская позиция?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Упаковка этой складской позиции хранится в"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Установлено в"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Установлен ли этот элемент в другой элемент?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Серийный номер для этого элемента"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Код партии для этой складской позиции"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Количество на складе"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Исходное производство"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Производства для этой складской позиции"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Поглощен"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Заказ на производство, который поглотил эту складскую позицию"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Исходный заказ на закупку"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Заказ на закупку для этой складской позиции"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Целевой заказ на продажу"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Дата истечения срока годности для складской позиции. Остатки будут считаться просроченными после этой даты"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Удалить при обнулении"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Удалить эту складскую позицию при обнулении складского запаса"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Цена за единицу на момент покупки"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Преобразовано в деталь"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "Количество превышает доступный запас"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Деталь не является отслеживаемой"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Количество должно быть целым числом"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Количество не должно превышать доступный запас ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Серийные номера должны быть предоставлены в виде списка"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Количество не соответствует серийным номерам"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr "Нельзя назначить запас в структурное местоположение"
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Шаблон теста не существует"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Складская позиция была назначена заказу на продажу"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Складская позиция установлена в другую деталь"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Складская позиция содержит другие детали"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Складская позиция была назначена покупателю"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Складская позиция в производстве"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Серийные запасы нельзя объединить"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Дублирующие складские элементы"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Складские позиции должны ссылаться на одну и ту же деталь"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Складские позиции должны ссылаться на одну и ту же деталь поставщика"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Коды статуса запаса должны совпадать"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Складской элемент нельзя переместить, так как он отсутствует на складе"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Отслеживание складского элемента"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Заметки к записи"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Результат теста складского элемента"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Для этого теста должно быть указано значение"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Для этого теста требуется загрузить вложения"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Недопустимое значение для этого теста"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Результат тестирования"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Результат выполнения теста"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Вложение с результатом теста"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Заметки о тестировании"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Испытательное оборудование"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "Идентификатор испытательного оборудования, на котором выполнялось тестирование"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Запущен"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Время начала тестирования"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Завершён"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Время окончания тестирования"
@@ -8662,43 +8662,43 @@ msgstr "Выберите деталь для генерации серийног
msgid "Quantity of serial numbers to generate"
msgstr "Количество серийных номеров для генерации"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Шаблон теста для этого результата"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr "Для этой детали не найдено подходящего теста"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "Необходимо указать ID шаблона или имя теста"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "Время завершения теста не может быть раньше времени начала"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Родительский элемент"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Родительский складской элемент"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Использовать размер упаковки при добавлении: заданное количество — это количество упаковок"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "Использовать размер упаковки"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Введите серийные номера для новых элементов"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Номер детали поставщика"
@@ -8732,8 +8732,8 @@ msgstr "Складской элемент не предоставлен"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Количество не должно превышать доступный запас ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Целевое место хранения"
@@ -8805,103 +8805,103 @@ msgstr "Выберите складские позиции для изменен
msgid "No stock items selected"
msgstr "Не выбрано ни одной складской позиции"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Места хранения"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Родительское местоположение запаса"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Деталь должна быть продаваемой"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Элемент распределён в заказ на продажу"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Элемент зарезервирован для заказа на производство"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Покупатель для назначения складских позиций"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Выбранная компания не является покупателем"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Записи о назначенных запасах"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Необходимо предоставить список складских позиций"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Заметки об объединении складских позиций"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Разрешить несоответствие поставщиков"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Разрешить объединение складских позиций с различными поставщиками"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Разрешить несоответствие статусов"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Разрешить объединение складских позиций с различными статусами"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Необходимо предоставить как минимум 2 складские позиции"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Нет изменений"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Первичный ключ складского элемента"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Складской элемент отсутствует на складе"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "Складской элемент уже на складе"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "Количество не должно быть отрицательным"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Заметки об изменении склада"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "Объединить с существующим запасом"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "Объединять возвращённые элементы с существующими складскими элементами, если возможно"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "Следующий серийный номер"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "Предыдущий серийный номер"
@@ -9383,83 +9383,83 @@ msgstr "Заказы на продажу"
msgid "Return Orders"
msgstr "Заказы на возврат"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Логин"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Имя"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Имя пользователя"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Фамилия"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Фамилия пользователя"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Адрес электронной почты пользователя"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Персонал"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Имеет ли этот пользователь права персонала"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Суперпользователь"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Это пользователь является суперпользователем"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Активна эта учетная запись"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "Только суперпользователь может изменить это поле"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Пароль"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "Пароль пользователя"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "Игнорировать предупреждение"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "Игнорировать предупреждение о правилах пароля"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "У вас нет разрешения на создание пользователей"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Ваша учётная запись была успешно создана."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Пожалуйста, используйте функцию сброса пароля для входа"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Добро пожаловать в InvenTree"
diff --git a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po
index 5743f98b50..e172b17e9b 100644
--- a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Slovak\n"
"Language: sk_SK\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr ""
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr ""
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr ""
@@ -112,13 +112,13 @@ msgstr ""
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr ""
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr ""
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr ""
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr ""
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr ""
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr ""
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr ""
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr ""
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr ""
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr ""
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po
index 81ae4cc9d9..3bee3a3bd4 100644
--- a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Slovenian\n"
"Language: sl_SI\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API vmesnik ni najden"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Uporabnik nima dovoljenja pogleda tega modela"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Ni mogoče pretvoriti {original} v {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Podana napačna količina"
@@ -112,13 +112,13 @@ msgstr "Vnesi datum"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Zapiski"
@@ -171,35 +171,35 @@ msgstr "Odstranite oznako HTML iz te vrednosti"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Napaka povezave"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Odziv serverja: napravilni status kode"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Pojavila se je izjema"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Odziv serverja: napačna dolžina vrednosti"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Prevelika velikost slike"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Prenos slike presegel največjo velikost"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Oddaljeni server vrnil prazen odziv"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Podani URL ni veljavna slikovna datoteka"
@@ -207,11 +207,11 @@ msgstr "Podani URL ni veljavna slikovna datoteka"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-pošta"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr "Referenca se mora ujemati s vzorcem"
msgid "Reference number is too large"
msgstr "Referenčna številka prevelika"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Nedovoljena izbira"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Ime"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Opis"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Opis (opcijsko)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Pot"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Podvojena imena ne morejo obstajati pod istim nadrejenim elementom"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown opombe (neobvezno)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Podatki čtrne kode"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Podatki črtne kode tretje osebe"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Oznaka črtne kode"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Enolična oznaka podatkov črtne kode"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Črtna koda že obstaja"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Napaka strežnika"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Zaznana napaka na strežniku."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Mora biti veljavna številka"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Izberite valuto med razpoložljivimi možnostmi"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Neveljavna vrednost"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Oddaljena slika"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "Povezava do oddaljene slike"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Prenos slik iz oddaljene povezave ni omogočen"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Neveljavna fizična enota"
msgid "Not a valid currency code"
msgstr "Neveljavna oznaka valute"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr "Nadrejena izgradnja"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Del"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Izgradnja mora biti najprej preklicana, nato je lahko izbrisana"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Neobvezno"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Montaža"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Sledi"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testno"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Dodeljeno"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Na voljo"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Nalog izgradnje"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr ""
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Referenca naloga izgradnje"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referenca dobavnica"
msgid "SalesOrder to which this build is allocated"
msgstr "Dobavnica na katero se navezuje ta izgradnja"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Lokacija vira"
@@ -857,17 +857,17 @@ msgstr "Status izgradnje"
msgid "Build status code"
msgstr "Koda statusa izgradnje"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Številka serije"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Številka serije za to izgradnjo"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Datum ustvarjenja"
@@ -887,7 +887,7 @@ msgstr "Rok dokončanja"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Rok končanja izdelave. Izdelava po tem datumu bo v zamudi po tem datumu."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Datom končanja"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Uporabnik, ki je izdal nalog za izgradnjo"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Odgovoren"
@@ -913,12 +913,12 @@ msgstr "Odgovoren"
msgid "User or group responsible for this build order"
msgstr "Odgovorni uporabnik ali skupina za to naročilo"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Zunanja povezava"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Zunanja povezava"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr "Nalog izgradnje {build} je dokončan"
msgid "A build order has been completed"
msgstr "Nalog izgradnej dokončan"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr "Igradnja je že dokončana"
msgid "Build output does not match Build Order"
msgstr "Izgradnja se ne ujema s nalogom izdelave"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "Količina"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Izdelana postavka mora imeti izgradnjo, če je glavni del označen kot sledljiv"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Količina za zalogo s serijsko številko mora biti 1"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Prestavljena zaloga ({q}) ne sme presegati zaloge ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Preveč zaloge je prestavljene"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Prestavljena količina mora biti večja od 0"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Količina za zalogo s serijsko številko mora biti 1"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Postavka zaloge"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Izvorna postavka zaloge"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Količina zaloge za prestavljanje za izgradnjo"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Inštaliraj v"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Destinacija postavke zaloge"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Izgradnja"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Izgradnja se ne ujema z nadrejeno izgradnjo"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Izhodni del se ne ujema s naročilom sestava"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Ta sestava je že zaključena"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Uporabnik"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktivno"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Povezava"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Priloga"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Manjka datoteka"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Manjka zunanja povezava"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Izberite prilogo"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Komentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Ime datoteke"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Prestavljena količina mora biti večja od 0"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr ""
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Uporabniško ime"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Ime"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Ime uporabnika"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Priimek"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Priimek uporabnika"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Email uporabnika"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Osebje"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Ali ima ta uporabnik pravice osebja"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superuporabnik"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Ali je ta uporabnik superuporabnik"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Ali je ta račun aktiven"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Vaš račun je bil ustvarjen."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Za prijavo uporabite funkcijo ponastavitve gesla"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Dobrodošli v InvenTree"
diff --git a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po
index 146d188d87..d146ac4f87 100644
--- a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Serbian (Latin)\n"
"Language: sr_CS\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API krajnja tačka nije pronađena"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Lista nevalidiranih stavki"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Dati su neispravni filteri"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Korisnik nema dozvolu za pregled ovog modela"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Nije moguće konvertovati {original} u {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Isporučena nevažeća količina"
@@ -112,13 +112,13 @@ msgstr "Unesite datum"
msgid "Invalid decimal value"
msgstr "Neispravna decimalna vrednost"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Napomene"
@@ -171,35 +171,35 @@ msgstr "Uklonite HTML oznake iz ove vrednosti"
msgid "Data contains prohibited markdown content"
msgstr "Podatak sadrži zabranjen jezički sadržaj"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Greška u povezivanju"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Server je odgovorio nevažećim statusnim kodom"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Došlo je do izuzetka"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Server je odgovorio nevažećom vrednošću dužina sadržaja"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Veličina slike je prevelika"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Preuzimanje slike premašilo je maksimalnu veličinu"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Udaljeni server vratio je prazan odgovor"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Navedeni URL nije važeća slikovna datoteka"
@@ -207,11 +207,11 @@ msgstr "Navedeni URL nije važeća slikovna datoteka"
msgid "Log in to the app"
msgstr "Prijavljivanje na aplikaciju"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-Pošta"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr "Referenca mora odgovarati traženom obrascu"
msgid "Reference number is too large"
msgstr "Broj reference je predugačak"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Nevažeći izvor"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Ime"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Opis"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Opis (Opciono)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Putanja"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Dvostruka imena ne mogu postojati pod istom nadredjenom grupom"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Zabeleške (Opciono)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Podaci sa barkoda"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Podaci sa barkoda trećih lica"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Heš barkoda"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Jedinstveni hash barkoda"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Postojeći barkod pronađen"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Neuspešan zadatak"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Pozadinski proces '{f}' neuspešan posle {n} pokušaja"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Greška servera"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Server je zabležio grešku."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Slika"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Mora biti važeći broj"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Odaberite valutu među dostupnim opcijama"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Nevažeća vrednost"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Udaljena slika"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL udaljene slike"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Preuzimanje slika s udaljenog URL-a nije omogućeno"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "Neuspešno preuzimanje slike sa udaljene URL"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Nevažeća jedinica mere"
msgid "Not a valid currency code"
msgstr "Nevažeći kod valute"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Status naloga"
@@ -562,21 +562,21 @@ msgstr "Status naloga"
msgid "Parent Build"
msgstr "Roditeljski proizvod"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Uključi varijante"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Uključi varijante"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Uključi varijante"
msgid "Part"
msgstr "Deo"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategorija"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr "Ne uključuj stablo"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Proizvod mora biti poništen pre nego što se izbriše"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Potrošni materijal"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Opciono"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Sklapanje"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Praćeno"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Proverljivo"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "Neizmirena narudžbina"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Alocirano"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Dostupno"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Po narudžbini"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Nalog za izradu"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Lokacija"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Reference naloga za pravljenje"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Referenca naloga za prodaju"
msgid "SalesOrder to which this build is allocated"
msgstr "Nalog za prodaju za koju je ova izrada alocirana"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Lokacija izvora"
@@ -857,17 +857,17 @@ msgstr "Status izgradnje"
msgid "Build status code"
msgstr "Kod statusa izgradnje"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Kod serije"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Kod izgradnje za ovaj izlaz"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "datum kreiranja"
@@ -887,7 +887,7 @@ msgstr "Datum ciljanog završetka"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Ciljani datum za završetak izgradnje. Izgradnja će biti u prekoračenju nakon ovog datuma"
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Datum završetka"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Korisnik koji je izdao nalog za izgradnju"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Odgovoran"
@@ -913,12 +913,12 @@ msgstr "Odgovoran"
msgid "User or group responsible for this build order"
msgstr "Korisnik ili grupa koja je odgovorna za ovaj nalog za izgradnju"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Spoljašnja konekcija"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Link za eksterni URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Prioritet ovog naloga za izgradnju"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Kod projekta"
@@ -960,7 +960,7 @@ msgstr "Nalog za izgradnju {build} je kompletiran"
msgid "A build order has been completed"
msgstr "Nalog za izgradnju je kompletiran"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Za delove koji mogu da se prate moraju se dostaviri serijski brojevi"
@@ -976,23 +976,23 @@ msgstr "Izlaz izgradnje je već kompletiran"
msgid "Build output does not match Build Order"
msgstr "Izlaz izgradnje se ne slaže sa Nalogom za izgradnju"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Količina mora biti veća od nule"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Količina ne sme da bude veća od izlazne količine"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Izlaz izgradnje {serial} nije zadovoljio zahtevane testove"
@@ -1001,18 +1001,18 @@ msgstr "Izlaz izgradnje {serial} nije zadovoljio zahtevane testove"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Stavka porudžbine naloga za izgradnju"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Objekat izgradnje"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Objekat izgradnje"
msgid "Quantity"
msgstr "Količina"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Potrebna količina za nalog za izgradnju"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Stavka izgradnje mora imati izlaz izgradnje, jer je nadređeni deo markiran da može da se prati"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Izabrana stavka zaliha se ne slaže sa porudžbinom sa spiska materijala"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Količina mora da bude 1 za zalihe koje su serijalizovane"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Alocirana količina ({q}) ne sme da bude veća od količine dostupnih zaliha ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Stavka zaliha je prealocirana"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Količina alokacije mora da bude veća od nule"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Količina mora da bude 1 za zalihe koje su serijalizovane"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Izabrana stavka zaliha se ne slaže sa porudžbinom sa spiska materijala"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Stavka zaliha"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Izvor stavke zaliha"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Količina zaliha za alociranje za izgradnju"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Ugradi u"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Stavka zaliha odredišta"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Nivo izgradnje"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Ime dela"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Naziv koda projekta"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Izlaz izgradnje"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Izlaz izgradnje se ne slaže sa nadređenom izgradnjom"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Izlazni deo se ne slaže sa delom Naloga za Izgradnju"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Ovaj izlaz izgradnje je već kompletiran"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Ovaj izlaz izgradnje nije u potpunosti alociran"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Unesi količinu za izlaz izgradnje"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Brojčana količina potrebna za delove koji mogu da se prate"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Potrebna je brojčana količina, jer opis materijala sadrži delove koji se mogu pratiti"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Serijski brojevi"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Unesi serijske brojeve za izlaz izgradnje"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Lokacija zaliha za izlaz izgradnje"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Automatski alociraj serijske brojeve"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Automatski alociraj tražene stavke sa odgovarajućim serijskim brojevima"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Sledeći serijski brojevi već postoje ili su neispravni"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Lista izlaza izgradnje se mora obezbediti"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Lokacija zaliha za otpisane izlaze"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Odbaci alokacije"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Odbaci bilo kojiu alokaciju zaliha za otpisane izlaze"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Razlog za otpisane izlaz(e) izgradnje"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Lokacija za završene izlaze izgradnje"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Prihvati nekompletirane Alokacije"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "kompletiraj izlaze ako zalihe nisu u potpunosti alocirane"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Troši alocirane zalihe"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Troši bilo koje zalihe koje su već alocirane za ovu izgradnju"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Ukloni nekompletirane izlaze"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Izbriši svei izlaze izgradnje koji nisu kompletirani"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Nije dozvoljeno"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Prihvati kao potrošeno od strane ovog naloga za izgradnju"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Izmesti bre završetka ovog naloga za izgradnju"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Sveukupne izdvojene zalihe"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Šta želite da radite sa viškom stavki u zalihama koje su dodeljene nalogu za izgradnju?"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Neke stavke zaliha su prealocirane"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Prihvati nealocirano"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Prihvati da stavke zaliha nisu u potpunosti alocirane za ovaj nalog za izgradnju"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Tražene zalihe nisu u potpunosti alocirane"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Prihvati nekompletirano"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Prihvati da je traženi broj izlaza izgradnje nekompletan"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Traženi broj izgradnji nije kompletan"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Nalog za izgradnju ima otvoren potčinjene naloge za izgradnju"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Nalog za izgradnju mora biti u stanju produkcije"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Nalog za izgradnju ima nekompletne izlaze"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Porudžbina izgradnje"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Izlaz izgradnje"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Izlaz izgradnje mora da referencira istu izgradnju"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Stavka porudžbine za izradu"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part mora da se referencira istom delu kao u nalogu za izgradnju"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Stavka mora da bude u zalihama"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Dostupna količina ({q}) premašena"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Izlaz izgradnje mora da određen za alokaciju praćenih delova"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Izlaz izgradnje ne može biti određen za alokaciju nepraćenih delova"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Stavke alociranja se moraju odrediti"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Lokacija zaliha koje će da budu izvor delova (ostavi prazno ukoliko uzimate sa bilo koje lokacije)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Isključi lokaciju"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Isključi stavke zaliha za ovu selektovanu lokaciju"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Zamenljive zalihe"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Stavke zaliha koje su na različitim lokacijama se mogu međusobno menjati"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Zamenske zalihe"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Dozvoli alociranje delova koji su zamenski"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Opcionalne stavke"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Alociraj opcione BOM stavke na nalog za izgradnju"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Greška prilikom startovanja auto alociranja"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "Referenca BOM"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "BOM ID dela"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "BOM ime dela"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Deo dobavljača"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Alocirana količina"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Referenca izgradnje"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Ime kategorije dela"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Može da se prati"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Nasleđen"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Dozvoli varijante"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "BOM stavka"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "U proizvodnji"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Spoljašnje zalihe"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Dostupne zalihe"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Dostupne zamenske zalihe"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Dostupne varijante zaliha"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Prekoračeni nalog za izgradnju"
msgid "Build order {bo} is now overdue"
msgstr "Nalog za izgradnju {bo} je sada prekoračen"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "je link"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "je datoteka"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Korisnik nema potrebne dozvole da bi izbrisao ove atačmente"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Korisnik nema dozvolu da izbriše ovaj atačment"
@@ -1530,7 +1522,11 @@ msgstr "Nisu obezbeđeni ispravni kodovi valuta"
msgid "No plugin"
msgstr "Nema dodataka"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Naziv koda projekta"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Ažurirano"
@@ -1558,7 +1554,7 @@ msgstr "Opis projekta"
msgid "User or group responsible for this project"
msgstr "Korisnik ili grupa odgovorni za ovaj projkat"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Ključ za podešavanje"
@@ -1590,550 +1586,550 @@ msgstr "Vrednost ne prolazi test ispravnosti"
msgid "Key string must be unique"
msgstr "Tekstualni ključ mora da bude jedinstven"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Korisnik"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Prelomna količina cene"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Cena"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Cena jedinice za određenu količinu"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Krajnja tačka"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Krajnja tačka na kojoj je primljen zahtev za izmenu web stranice"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Ime ovog zahteva za izmenu stranice"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktivan"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Da li je ovaj zahtev za izmenu aktivan?"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Token za pristup"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Tajna"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Deljena tajna za HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "ID poruke"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Jedinstveni identifikator za ovu poruku"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Računar"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Računar koji je primio ovu poruku"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Zaglavlje"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Zaglavlje ove poruke"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Telo"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Telo ove poruke"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Krajnja tačka na kojoj je ova poruka primljena"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Radilo se na "
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Da li je rad sa ovom porukom završen?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Naslov"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Link"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Objavljeno"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Autor"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Rezime"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Čitaj"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Da li je ova stavka vesti pročitana"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Datoteka slike"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "Ciljni tip modela za ovu sliku"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "Ciljni ID modela za ovu sliku"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Posebna jedinica"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Simbol jedinice mora biti jedinstven"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Ime jedinice mora da bude ispravan identifikator"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Ime jedinice"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Simbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Opcioni simbol jedinice"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definicija"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Definicija jedinice"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Prilog"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Nedostaje datoteka"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Nedostaje eksterni link"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Izaberite datoteku za prilog"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Komentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Komentar priloga"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Datum učitavanja"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Datum kada je datoteka učitana"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Veličina datoteke"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Veličina datoteke u bajtovima"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Određen je neispravan tip modela za prilog"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Posebno stanje"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Posebna stanja"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Referentni status podešen"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Status je podešen i produžen je sa ovim posebnim stanjem"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Logički ključ"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "Stanje logičkog ključa je jednako posebnom ključu u poslovnoj logici"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Vrednost"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Numerička vrednost koja će biti sačuvana u bazi podataka modela"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Ime stanja"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etiketa"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Etiketa koja će biti prikazana na korisničkoj strani"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Boja"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Boja koja će biti prikazana na korisničkoj strani"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Model ovog stanja je povezan sa "
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Model mora biti izabran"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Ključ mora biti izabran"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Logički ključ mora biti izabran"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Ključ mora da se razlikuje od logičkog ključa"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Validna referenca statusa klase mora biti dostavljena"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Ključ mora biti različit od logičkog ključa referentnog statusa"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "Logički ključ mora biti među logičkim ključevima referentnog statusa"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "Naziv mora biti različit od naziva u statusu reference"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Lista odabira"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Liste odabira"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Ime liste odabira"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Opis liste odabira"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Zaključano"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Da li je ova lista odabira zaključana?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Da li se ova lista odabira može koristiti?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Ekstenzija/dodatak za izvor"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Ekstenzija koja pruža listu odabira"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "String izvora"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Opcioni string koji identifikuje izvor koji se koristi za ovu listu"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Podrazumevani unos"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Podrazumevani unos za ovu listu odabira"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Kreirano"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Datum i vreme kada je ova lista odabira kreirana"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Poslednje ažuriranje"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Datum i vreme kada je ova lista odabira ažurirana"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Unos liste odabira"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Unosi liste odabira"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Lista odabira kojoj ovaj unos pripada"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Vrednost ovog unosa liste odabira"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Naziv ovog unosa liste odabira"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Opis ovog unosa liste odabira"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Da li je unos ove liste odabira aktivan?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Šablon parametra"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Checkbox parametri ne mogu imati jedinice"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Checkbox parametri ne mogu imati izbore"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Izbori moraju biti jedinstveni"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Ime šablona parametra mora biti jedinstveno"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Naziv parametra"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Jedinice"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Fizičke jedinice za ovaj parametar"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Opis parametra"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Polje za potvrdu"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Da li je ovaj parametar checkbox?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Izbori"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Validni izbori za ovaj parametar (razdvojeni zapetom)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "Lista izbora za ovaj parametar"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Omogućen"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Nije validan izbor za vrednost parametra"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Šablon"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Podaci"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Vrednost parametra"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Vrednost parametra"
msgid "Note"
msgstr "Beleška"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Opciona beleška"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Skeniranje bar koda"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Podaci bar koda"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Korisnik koji je skenirao bar kod"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Vremenski trag"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Datum i vreme skeniranja bar koda"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "URL krajnja tačka kojaj je obradila bar kod"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Kontekst"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Kontekst podataka za skeniranje bar koda"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Odgovor"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Podaci odgovora za skeniranje bar koda"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Rezultat"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Da li je skeniranje bar koda bilo uspešno?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Ključ"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} poništeno"
msgid "A order that is assigned to you was canceled"
msgstr "Narudžbina koja je bila dodeljena vama je otkazana"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Stavke primljene"
@@ -2351,93 +2347,101 @@ msgstr "Stavke su primljene uprkos nalogu za kupovinu"
msgid "Items have been received against a return order"
msgstr "Stavke su primljene uprkos nalogu za povrat"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Pokrenuto je"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Čekaju se zadaci"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Planirani zadaci"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Propali zadaci"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID zadatka"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Jedinstveni ID zadatka"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Zaključaj"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Vreme zaključavanja"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Naziv zadatka"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funkcija"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Ime funkcije"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argumenti"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Argumenti zadatka"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Ključne reči argumenata"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Ključne reči argumenata zadatka"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Ime datoteke"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Tip modela"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Korisnik nema dozvolu da napravi ili izmeni priloge za ovaj model"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Lista odabira je zaključana"
@@ -2445,1128 +2449,1132 @@ msgstr "Lista odabira je zaključana"
msgid "No group"
msgstr "Nema grupe"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "URL sajta je zaključan od strane konfiguracije"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Ponovno pokretanje potrebno"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Podešavanje je izmenjeno i zahteva ponovno pokretanje servera"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Migracije na čekanju"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Broj migracija baze podataka koje su na čekanju"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Ime instance servera"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Stringovni opis instance servera"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Ime instance korisnika"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Koristi ime instance u naslovnoj liniji"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Zabrani prikazivanje `O nama`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Prikaži `O nama` samo superkorisnicima"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Ime kompanije"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Interno ime kompanije"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Osnovni URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Osnovni URL za instancu servera"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Podrazumevana valuta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Izaberi osnovnu valutu za određivanje cena"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Podržane valute"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Lista kodova podržanih valuta"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Interval ažuriranja valuta"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Koliko često ažurirati devizne kurseve (podesi na nulu za onemogućti)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dani"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Dodatak za ažuriranje valute"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Dodatak za ažuriranje valute koji će se koristiti"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Skini sa URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Dozvoli skidanje sa udaljenih lokacija slika i datoteka"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Ograničenje veličine skidanja"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Maksimalna dozvoljena veličina slike koja se skida"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "Korisnik-agent koji se koristi za skidanje sa URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Dozvoli premošćavanje koji će se korisnik-agent koristiti za skidanje slika i datoteka sa spoljašnjeg URL (ostavi prazno da se podesi kao podrazumevano)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Stroga validacija URL"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "Traži specifikaciju za validaciju URL-ova"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Ažuriraj interval provere"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Koliko često da proveravam za nova ažuriranja? (podesi na nulu da bi isključio)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Automatsko pravljenje rezervne kopije"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Omogući automatsko pravljenje rezervne kopije baze podataka i medijskih datoteka"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Automatski interval pravljenja rezervnih kopija"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Odredi broj dana između automatskih pravljenja rezervnih kopija"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Interval brisanja zadataka"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Rezultati pozadinskih zadataka biće izbrisani nakon određenog broja dana "
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Interval brisanja evidencije grešaka"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Evidencija grešaka biće izbrisana nakon određenog broja dana"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Interval brisanja obaveštenja"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Korisnička obaveštenja biće izbrisana nakon određenog broja dana"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Podrška za bar kod"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Omogući podršku za bar kod skener preko interfejsa stranice"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "Uskladišti rezultate bar koda"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "Uskladišti rezultate bar koda u bazu podataka"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "Maksimalan broj skeniranja bar koda"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "Maksimalan broj rezultata skeniranja bar koda koji treba da se skladišti"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Kašnjenje unosa bar koda"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Vreme kašnjena obrađivanja ulaza bar koda"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Podrška za bar kod veb kameru"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Omogući skeniranje bar koda pomoću veb kamere u pretraživaču"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Prikaži podatke bar koda"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Prikaži podatke bar koda u pretraživaču kao tekst"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Dodatak za generisanje bar koda"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Dodatak koji će se koristiti kao interni generator podataka bar koda"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Revizije dela"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Omogući polje za reviziju dela"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Jedino revizija sastavljanja "
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Dozvoli jedino revizije za sastavne delove"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Dozvoli brisanje iz sastavljanja"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Dozvoli brisanje delova koji su korišćeni u sastavljanju"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Interni broj dela regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Regularni obrazac izraza za podudaranje IPN dela"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Dozvoli duple IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Dozvoli da više delova dele isti IPN"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Dozvoli izmenu IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Dozvoli izmenu IPN vrednosti u toku izmene dela"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Kopiraj BOM podatke dela"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Podrazumevaj kopiranje BOM podataka prilikom pravljenja duplikata dela "
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Kopiraj podatke parametara dela"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Podrazumevaj kopiranje podataka parametara dela prilikom pravljenja duplikata dela"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Kopiraj podatke testiranja dela"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Podrazumevaj kopiranje podataka testiranja dela prilikom pravljenja duplikata dela"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kopiraj šablone parametara kategorije"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Kopiraj šablone parametara kategorije prilikom pravljenja dela"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Podrazumevano je da su delovi šabloni"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Podrazumevano je da se delovi mogu sastavljati od drugih komponenti"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponenta"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Podrazumevano je da se delovi mogu koristi kao pod-komponente"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Može da se kupi"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Podrazumevano je da se delovi mogu kupiti"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Može da se proda"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "podrazumevano je da delovi mogu da se prodaju"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Podrazumevano je da delovi mogu da se prate"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuelni"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Podrazumevano je da su delovi virtuelni"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Prikaži povezane delove"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Prikaži povezane delove za deo"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Inicijalni podaci zaliha"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Dozvoli kreiranje inicijalne alihe prilikom dodavanja novog dela"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Podaci inicijalnog dobavljača"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Dozvoli kreiranje inicijalnog dobavljača prilikom dodavanja novog dela"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Format prikazivanja imena dela"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Format u kome će se prikazivati ime dela"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Podrazumevana ikona za kategoriju dela"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Podrazumevana ikona za kategoriju dela (prazno znači bez ikone)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Minimalan broj decimalnih mesta za cene"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Minimalan broj decimalnih mesta prilikom generisanja cenovnih podataka"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Maksimalan broj decimalnih mesta za cene"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Maksimalan broj decimalnih mesta prilikom generisanja cenovnih podataka"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Koristi cene dobavljača"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Uključi pauziranje cene dobavljača u sveukupnom računanju cene"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Premosti istorijat kupovina"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Prethodne cene narudžbenice zamenjuje pauze cena dobavljača"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Koristi cene stavki u zalihama"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Koristi cene koje su ručno unete u podatke zaliha"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Godina cena stavki u zalihama"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Odstrani stavke zaliha iz kalkulacija cena, koje su starije od ovog broja dana"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Koristi drugačije cene"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Uključi drugačije cene u sveukupnim kalkulacijama cene"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Samo aktivne varijante"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Koristi samo aktivne varijante za određivanje varijante cene"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Vremenski period za ponovno određivanje cena"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Broj dana koji treba da prođe da bi se cene delova automatski ažurirale"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Interne cene"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Omogući interne cene za delove"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Premošćavanje internih cena"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Ako su dostupne, interne cene premošćuju kalkulacije opsega cena"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Omogući štampanje etiketa"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Omogući štampanje etiketa preko web interfejsa"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI slike etikete"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "DPI rezolucija prilikom generisanja slikovne datoteke za dodatak koji štampa etikete"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Omogući izveštaje"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Omogući generisanje izveštaja"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Mod otklanjanja grešaka"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Generiši izveštaje u modu za otklanjanje grešaka (izlaz je u HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Greške evidencije izveštaja"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Greške evidentiranja koje se dese prilikom generisanja izveštaja"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Veličina stranice"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Podrazumevana veličina strane za izveštaje u PDF formatu"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Zahtevaj jedinice parametara"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Ako su jedinice date, vrednosti parametara moraju odgovarati datim jedinicama"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Globalno jedinstveni serijski brojevi"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Serijski brojevi za stavke zaliha moraju da budu globalno jedinstveni"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Obriši ispražnjene zalihe"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "Ovo određuje podrazumevano ponašanje kada je stavka zaliha istrošena"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Šablon koda serije"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Šablon za generisanje podrazumevanih kodova serije stavki u zalihama"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Datum isteka zaliha"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Omogući funkcionalnost isteka zaliha"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Prodaja isteklih zaliha"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Dozvoli prodaju isteklih zaliha"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Vreme zastarevanja zaliha"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Broj dana tokom kojih će se stavke zaliha smatrati zastarelim pre isteka"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Izrada sa isteklim zalihama"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Dozvoli izradu sa isteklim zalihama"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Vlasnička kontrola zaliha"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Omogući vlasničku kontrolu nad lokacijama zaliha i stavkama"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Podrazumevana ikonica lokacije zaliha"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Podrazumevana ikonica lokacije zaliha (prazno znači da nema ikonice)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Prikaži instalirane stavke sa zaliha"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Prikaži instalirane stavke sa zaliha u stok tabelama"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "Proveri spisak materijala pri instalaciji stavki"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "Instalirane stavke sa zaliha moraju postojati u spisku materijala nadređenog dela"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Dozvoli transfer van zaliha"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "Dozvoli da stavke sa zaliha koje nisu na zalihama budu premeštane između lokacija zaliha"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Referentni šablon naloga za izradu"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Potreban šablon za generisanje referentnog polja naloga za izradu"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Potreban odgovoran vlasnik"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Odgovoran vlasnik mora biti dodeljen svakom nalogu"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "Potreban aktivan deo"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "Spreči kreiranje naloga za izradu za neaktivne delove"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Potreban zaključan deo"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "Spreči kreiranje nalogaza izradu za otključane delove"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Potreban validan spisak materijala"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "Spreči kreiranje naloga za izradu pre validacije spiska materijala"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Potrebno završavanje podređenih naloga"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "Spreči završavanje naloga za izradu pre završavanja svih podređenih naloga"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Blokiraj dok ne prođe test"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Spreči završavanje naloga za izradu pre uspešnog završetka svih testova"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Omogući naloge za vraćanje"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Omogući funkcionalnost vraćana u korisničkom interfejsu"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Referentni šablon naloga za vraćanje"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "Potreban šablon pri generisanju referentnog polja naloga za vraćanje"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Izmeni završene naloge za vraćanje"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Dozvoli izmenu naloga za vraćanje nakon što su završeni"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Referentni šablon naloga za prodaju"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Potreban šablon pri generisanju referentnog polja naloga za prodaju"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Podrazumevana isporuka naloga za prodaju"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Omogućava kreiranje podrazumevane isporuke sa nalozima za prodaju"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Izmeni završene naloge za prodaju"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Dozvoli izmenu naloga za prodaju nakon što su isporučeni ili završeni"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Označi isporučene naloge kao završene"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "Nalozi za prodaju označeni kao isporučeni će automatski biti završeni, zaobilazeći status isporučen"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Referentni šablon naloga za kupovinu"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Potreban šablon pri generisanju referentnog polja naloga za kupovinu"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Izmeni završene naloge za kupovinu"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Dozvoli izmenu naloga za kupovinu nakon što su isporučeni ili završeni"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Automatski završi naloge za kupovinu"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "Automatski označi naloge za kupovinu kao završene kada su primljene sve stavke porudžbine"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Omogući zaboravljenu lozinku"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Omogući funkcionalnost zaboravljene lozinke na stranicama za prijavljivanje"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Omogući registraciju"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Omogući registraciju korisnicima na stranicama za prijavljivanje"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Omogući SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Omogući SSO na stranicama za prijavljivanje"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Omogući SSO registraciju"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Omogući registraciju preko SSO za korisnike na stranicaa za prijavljivanje"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "Omogući SSO sinhronizaciju grupa"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "Omogući sinhronizaciju grupa aplikacije sa grupama IdP-a"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSO ključ grupe"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "Nazivi grupa dobijaju atribute od IdP-a"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "Mapiranje SSO grupa"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "Mapiranje SSO grupa u lokalne grupe aplikacije. Ukoliko lokalna grupa ne postoji, biće kreirana."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "Ukloni grupe van SSO"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Da li će grupe dodeljene korisnicima biti uklonjene ukoliko nisu podržane IdP-om. Onemogućavanje ovoga može dovesti do problema."
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Email neophodan"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Zahtevaj od korisnika da dostavi mejl prilikom registracije"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Automatski popuni SSO korisnike"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Automatski popuni korisnikove podatke iz SSO naloga"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Email dva puta"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Pitaj korisnika dva puta za email prilikom registracije"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Lozinka dva puta"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Pitaj korisnika dva puta za lozinku prilikom registracije"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Dozvoljeni domeni"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Ograniči registraciju na određene domene (razdvojeni zapetom, počinju sa @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Grupa pri registrovanju"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Grupa kojoj se novi korisnici dodeljuju pri registraciji. Ukoliko je SSO group sync omogućen, ova grupa će se dodavati ukoliko korisnik ne može da dobije grupu iz IdP-a."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Nametni MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Korisnici moraju koristiti multifaktorsku bezbednost"
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Proveri plugine pri pokretanju"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Proveri da li su svi pluginovi instalirani pri pokretanju - omogućeni u kontejnerskim okruženjima"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Proveri ažuriranja pluginova"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "Omogući periodično proveranje pluginova"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Omogući URL integraciju"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Omogući da pluginovi dodaju URL rute"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Omogući integraciju u navigaciju"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Omogući integraciju pluginova u navigaciju"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Omogući integraciju aplikacija"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Omogući pluginovima da dodaju aplikacije"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Omogući integraciju planiranja"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Omogući da plugini izvršavaju planirane zadatke"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Omogući integraciju događaja"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Omogući da plugini odgovaraju na unutrašnje događaje"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "Omogući integraciju interfejsa"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "Omogući integraciju pluginova u korisnički interfejs"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Ne uključuj eksterne lokacije"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Period automatskog popisa"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Prikaži puna imena korisnika"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Prikaži puna imena korisnika umesto korisničkih imena"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "Omogući podatke test stanica"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "Omogući prikupljanje podataka sa test stanica radi rezultata testova"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "Deo je aktivan"
msgid "Manufacturer is Active"
msgstr "Proizvođač je aktivan"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Deo dobavljača je aktivan"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Interni deo je aktivan"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "Dobavljač je aktivan"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Proizvođač"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Kompanija"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "Ima zalihe"
@@ -3969,7 +3977,7 @@ msgstr "Broj telefona kontakta"
msgid "Contact email address"
msgstr "Email adresa kontakta"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakt"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adrese"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adrese"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Izaberi kompaniju"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Naslov adrese"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Naslov koji opisuje adresu"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Primarna adresa"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Postavi kao primarnu adresu"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Telefon 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adresa 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Telefon 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Adresa 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Poštanski broj"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Grad/region"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Poštanski broj"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Država/provincija"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Država ili provincija"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Zemlja"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Adresa zemlje"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Beleške za kurira"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Beleške za kurira"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Interne beleške o isporuci"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Beleške o isporuci za internu upotrebu"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Link za adresne informacije (eksterni)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Deo proizvođača"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Osnovni deo"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Izaberi deo"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Izaberi proizvođača"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "Broj dela proizvođača"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Broj dela proizvođača"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL za link eksternog dela proizvođača"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Opis dela proizvođača"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Jedinice pakovanja moraju biti kompatibilne sa osnovnim jedinicama dela"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Jedinice pakovanja moraju biti veće od nule"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Povezani delovi dobavljača moraju referencirati isti osnovni deo"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Dobavljač"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Izaberi dobavljača"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Jedinica za držanje dobavljačevih zaliha"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "Da li je ovaj deo dobavljača aktivan?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Izaberi deo proizvođača"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL za link dela eksternog dobavljača"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Opis dela dobavljača"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "osnovni trošak"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Minimalna naplata (npr. taksa za slaganje)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Pakovanje"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Pakovanje delova"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Količina pakovanja"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Ukupna količina dostavljena u jednom pakovanju. Ostaviti prazno za pojedinačne stavke."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "više"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Naruči više"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Količine dostupne od dobavljača"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Dostupnost ažurirana"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Datum poslednjeg ažuriranja podataka o dostupnosti"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "Smanjenje cene dobavljača"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Podrazumevana valuta koja se koristi za ovog dobavljača"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Naziv kompanije"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Na zalihama"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr "Originalni podaci vrste"
msgid "Errors"
msgstr "Greške"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Važeće"
@@ -4530,7 +4530,7 @@ msgstr "Broj kopija za štampanje od svakog natpisa"
msgid "Connected"
msgstr "Konektovano"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Nepoznato"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Referenca naloga"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "Izvanredno"
@@ -4670,7 +4670,7 @@ msgstr "Izvanredno"
msgid "Has Project Code"
msgstr "Ima šifru projekta"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Kreirano do strane"
@@ -4710,11 +4710,11 @@ msgstr "Krajnji datum nakon"
msgid "Has Pricing"
msgstr "Ima cenu"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "Završen pre"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "Završen nakon"
@@ -4722,40 +4722,40 @@ msgstr "Završen nakon"
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Nalog"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "Nalog završen"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Interni deo"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "Nalog na čekanju"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Završeno"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "Ima isporuku"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Nalog za kupovinu"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Nalog za kupovinu"
msgid "Sales Order"
msgstr "Nalog za prodaju"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Ukupna cena"
msgid "Total price for this order"
msgstr "Totalna cena ovog naloga"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Valuta naloga"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Valuta za ovaj nalog (ostaviti prazno za podrazumevanu valutu kompanije)"
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Opis naloga (opciono)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Izaberi šifru projekta za ovaj nalog"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Link ka eksternoj stranici"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Ciljani datum"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Očekivani datum za isporuku. Nalog će biti zastareo nakon ovog datuma."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Datum izdavanja"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Datum kada je nalog izdat"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Korisnik ili grupa odgovorni za ovaj nalog"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Lice za kontakt za ovaj nalog"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Adresa kompanije za ovaj nalog"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Referenca naloga"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Status naloga za kupovinu"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Kompanija od koje su stavke naručene"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Referenca dobavljača"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Referentni kod dobavljača naloga"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "primljeno od strane"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Datum kada je nalog završen"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Odredište"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "Odredište za primljene stavke"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Dobavljač dela se mora poklapati sa dobavljačem naloga za kupovinu"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Stavka porudžbine se ne poklapa sa nalogom za kupovinu"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Količina mora biti pozitivan broj"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Mušterija"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Kompanija kojoj se prodaju stavke"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "Status naloga za prodaju"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Referenca mušterije"
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Referentni kod mušterijinog naloga"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Datum isporuke"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "isporučeno od strane"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "Nalog je već završen"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "Nalog je već otkazan"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Samo otvoren nalog može biti označen kao završen"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Nalog ne može biti završen jer ima nepotpunih isporuka"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "Nalog ne može biti završen jer ima nepotpunih alokacija"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Nalog ne može biti završen jer ima nezavršenih stavki porudbžine"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Količina stavki"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Referenca stavke porudbžine"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Beleške stavke porudbžine"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Krajnji datum za ovu stavku porudbćine (ostaviti prazno za krajnji datum sa naloga)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Opis stavke porudžbine (opciono)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Dodatni kontekst za ovu porudžbinu"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Cena jedinice"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "Stavka porudžbine naloga za kupovinu"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Deo dobavljača se mora poklapati sa dobavljačem"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Deo dobavljača"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Primljeno"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Broj primljenih stavki"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Kupovna cena"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Kupovna cena jedinice"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Provereno od strane"
msgid "User who checked this shipment"
msgstr "Korisnik koji je proverio ovu isporuku"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Isporuka"
@@ -5164,7 +5164,11 @@ msgstr "Ne mogu se alocirati zalihe porudbžini bez dela"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Alocirana količina ne sme da pređe količinu zaliha"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Količina alokacije mora da bude veća od nule"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Količina mora biti 1 za serijalizovane stavke sa zaliha"
@@ -5172,7 +5176,7 @@ msgstr "Količina mora biti 1 za serijalizovane stavke sa zaliha"
msgid "Sales order does not match shipment"
msgstr "Nalog za prodaju se ne poklapa sa isporukom"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Isporuka se ne poklapa sa nalogom za prodaju"
@@ -5256,247 +5260,247 @@ msgstr "Trošak asociran sa popravkom ili vraćanjem ove stavke porudžbine"
msgid "Return Order Extra Line"
msgstr "Doda"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "ID naloga"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "ID naloga koji će se duplirati"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "Kopiraj porudžbine"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "Kopiraj stavke porudžbine sa originalnog naloga"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "Kopiraj dodatne porudžbine"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "Kopiraj dodatne stavke porudžbine sa originalnog naloga"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Stavke porudbžine"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "Završene porudbžine"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "Dupliraj nalog"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "Odredi opcije za dupliranje ovog naloga"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "Nevažeći ID naloga"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Naziv dobavljača"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Nalog ne može biti otkazan"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Dozvoli da nalog bude zatvoren sa nepotpunim porudžbinama"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Nalog ima nepotpune stavke porudžbine"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Nalog nije otvoren"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "Automatske cene"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "Automatski izračunaj kupovnu cenu na osnovu podataka o delovima dobavljača"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Valuta kupovne cene"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "Spoj stavke"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "Spoj stavke sa istim delom, odredištem i ciljanim datumom u jednu stavku porudžbine"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "Jedinica za praćenje zaliha"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Interni broj dela"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "Interni naziv dela"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Deo dobavljača mora biti određen"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Nalog za kupovinu mora biti određen"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Dobavljač mora da se poklapa sa nalogom za kupovinu"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Nalog za kupovinu mora da se poklapa sa dobavljačem"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Stavka porudbžine"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Izaberi odredišnu lokaciju za primljene stavke"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Unesi šifru ture za nadolazeće stavke sa zaliha"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Datum isteka"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Unesi serijske brojeve za nadolazeće stavke sa zaliha"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "Promeni informacije o pakovanju za nadolazeće stavke sa zaliha"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "Dodatne beleške za nadolazeće stavke sa zaliha"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Bar kod"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Skeniran bar kod"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Bar kod je već u upotrebi"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Stavke porudžbine moraju biti dostavljene"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Odredišna lokacija mora biti određena"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Pružene vrednosti bar kodova moraju biti jedinstvene"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "Isporuke"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Završene isporuke"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Valuta prodajne cene"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "Alocirane stavke"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Nisu dostavljeni detalji isporuke"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Stavka porudžbine nije asocirana sa ovim nalogom"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Količina mora biti pozitivna"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Unesi serijske brojeve za alokaciju"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Isporuka je već isporučena"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Isporuka nije povezana sa ovim nalogom"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Nema pronađenih poklapanja za sledeće serijske brojeve"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "Sledeći serijski brojevi su nedostupni"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Stavka porudžbine naloga za vraćanje"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Stavka porudžbine se ne poklapa sa nalogom za vraćanje"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Stavka porudžbine je već primljena"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Stavke se mogu primiti samo na osnovu naloga koji su u toku"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "Količina za vraćanje"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Valuta cene porudžbine"
@@ -5647,7 +5651,7 @@ msgstr "Deo komponente se može testirati"
msgid "Uses"
msgstr "Koristi"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Kategorija dela"
@@ -5656,7 +5660,7 @@ msgstr "Kategorija dela"
msgid "Part Categories"
msgstr "Kategorije delova"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Podrazumevana lokacija"
@@ -5664,7 +5668,7 @@ msgstr "Podrazumevana lokacija"
msgid "Default location for parts in this category"
msgstr "Podrazumevana lokacija za delove ove kategorije"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Strukturno"
@@ -5680,12 +5684,12 @@ msgstr "Podrazumevane ključne reči"
msgid "Default keywords for parts in this category"
msgstr "Podrazumevane ključne reči za delove ove kategorije"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ikonica"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ikonica (opciono)"
@@ -5693,655 +5697,655 @@ msgstr "Ikonica (opciono)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Ova kategorija dela se ne može podesiti kao strukturna jer već ima dodeljene neke delove!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "Šablon parametara kategorije dela"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Podrazumevana vrednost"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Podrazumevana vrednost parametra"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Delovi"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Ovaj deo se ne može izbrisati jer je zaključan"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Ovaj deo se ne može izbrisati jer je i dalje aktivan"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Ovaj deo se ne može obrisati jer se koristi u sklopu"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Deo '{self}' ne može biti korišćen u spisku materijala za '{parent}' (recursive)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Deo '{parent}' se koristi u spisku materijala za '{self}' (recursive)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "Interni broj dela se mora slagati sa regex šablonom {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "Deo ne može biti revizija samog sebe"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "Ne može se kreirati revizija dela koji je već revizija"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "Šifra revizije mora biti dostavljena"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "Revizije su dozvoljene samo za delove sklopove"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "Ne može se izvršiti revizija šablonskog dela"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "Nadređeni deo mora biti vezan sa istim šablonom"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Stavka sa ovim serijskim brojem već postoji"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Duplirani interni brojevi dela nisu dozvoljeni u podešavanjima dela"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "Identična revizija dela već postoji"
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Deo sa ovim nazivom, internim brojem dela i revizijom već postoji"
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Delovi ne mogu biti dodeljeni strukturnim kategorijama delova!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Naziv dela"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Jeste šablon"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Da li je ovaj deo šablonski deo?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Da li je ovaj deo varijanta drugog dela?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Varijanta od"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Opis dela (opciono)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Ključne reči"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Ključne reči dela da bi se poboljšala vidljivost u rezultatima pretrage"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Kategorija dela"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "Interni broj dela"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Revizija dela ili broj verzije"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revizija"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "Da li je ovaj deo revizija drugog dela?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Revizija od"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Gde je ova stavka inače skladištena?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Podrazumevani dobavljač"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Podrazumevani deo dobavljača"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Podrazumevani istek"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Vreme isteka (u danima) za stavke sa zaliha ovog dela"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimalne zalihe"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Minimalni dozvoljen nivo zaliha"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Jedinice mere za ovaj deo"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Da li ovaj deo može biti izgrađen od drugih delova?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Da li ovaj deo može biti korišćen za izradu drugih delova?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Da li ovaj deo ima praćenje za više stavki?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "Da li ovaj deo može imati svoje rezultate testa?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Da li ovaj deo može biti kupljen od eksternih dobavljača?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Da li ovaj deo može biti prodat mušterijama?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Da li je ovaj deo aktivan?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "Zaključani delovi se ne mogu menjati"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Da li je ovo virtuelni deo, kao na primer softver ili licenca?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Suma spiska materijala"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Uskladištena suma spiska materijala"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "Spisak materijala proveren od strane"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Spisak materijala proveren datuma"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Korisnik koji je kreirao"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Vlasnik odgovoran za ovaj deo"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Prodaj više"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Valuta korišćena za vršenje proračuna o cenama"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Minimalna vrednost spiska materijala"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Minimalna vrednost komponenti delova"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Maksimalna vrednost spiska materijala"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Maksimalna vrednost komponenti delova"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Minimalna kupovna vrednost"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Minimalna istorijska kupovna vrednost"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Maksimalna kupovna vrednost"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Maksimalna istorijska kupovna vrednost"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Minimalna interna cena"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Minimalna cena bazirana na internim sniženjima cena"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Maksimalna interna cena"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Maksimalna vrednost bazirana na internim sniženjima cena"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Minimalna cena dobavljača"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Minimalna cena dela od eksternih dobavljača"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Maksimalna cena dobavljača"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Maksimalna cena dela od eksternih dobavljača"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Minimalna vrednost varijanti"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Izračunata minimalna vrednost varijanti delova"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Maksimalna vrednost varijanti"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Izračunata maksimalna vrednost varijanti delova"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Minimalna vrednost"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Promeni minimalnu vrednost"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Maksimalna vrednost"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Promeni maksimalnu vrednost"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Ukupna izračunata minimalna vrednost"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Ukupna izračunata maksimalna vrednost"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Minimalna prodajna cena"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Minimalna prodajna cena bazirana na osnovu sniženja cena"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Maksimalna prodajna cena"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Maksimalna prodajna cena bazirana na osnovu sniženja cena"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Minimalna prodajna vrednost"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Minimalna istorijska prodajna cena"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Maksimalna prodajna vrednost"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Maksimalna istorijska prodajna cena"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Deo za popis"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Broj stavki"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Broj individualnih unosa zaliha u vreme popisa"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Ukupne dostupne zalihe za vreme popisa"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Datum"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Datum kada je izvršen popis"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Minimalna vrednost zaliha"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Procenjena minimalna vrednost trenutnih zaliha"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Maksimalna vrednost zaliha"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Procenjena maksimalna vrednost trenutnih zaliha"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "Smanjenje prodajne cene dela"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "Šablon testa dela"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "Nevažeći naziv šablona - mora da uključuje bar jedan alfanumerički karakter"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "Test šabloni mogu biti kreirani samo za delove koje je moguće testirati"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "Test šablon sa istim ključem već postoji za ovaj deo"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Naziv testa"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Unesi naziv za ovaj test"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "Test ključ"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "Pojednostavljen ključ za test"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Opis testa"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Unesi opis za ovaj test"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "Da li je ovaj test omogućen?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Neophodno"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Da li je neophodno da ovaj test prođe?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Zahteva vrednost"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Da li ovaj test zahteva vrednost prilikom dodavanja rezultata testa?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Zahteva prilog"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Da li ovaj test zahteva fajl kao prilog prilikom dodavanja rezultata testa?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "Validni izbori za ovaj test (razdvojeni zapetom)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "Stavke sa spiska materijala se ne mogu modifikovati - sklapanje je zaključano"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "Stavke sa spiska materijala se ne mogu modifikovati - sklapanje varijanti je zaključano"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Izaberi nadređeni deo"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Pod-deo"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Izaberi deo koji će biti korišćen u spisku materijala"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Količina spiskova materijala za ovu stavku sa spiska materijala"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Ova stavka sa spiska materijala je opciona"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Ova stavka sa spiska materijala se može potrošiti (nije praćena u nalozima za izradu)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Referenca stavke sa spiska materijala"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Beleške stavki sa spiska materijala"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Suma"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Suma spiska materijala"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Validirano"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Ova stavka sa spiska materijala je validirana"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Biva nasleđeno"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Ova stavka sa spiska materijala je nasleđivana od spiska materijala za varijante delova"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Stavke sa zaliha za varijante delova se mogu koristiti za ovu stavku sa spiska materijala"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Količina mora biti ceo broj za delove koji se mogu pratiti"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Zamenski deo mora biti određen"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Zamenska stavka sa spiska materijala"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Zamenski deo ne može biti isti kao glavni deo"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Nadređena stavka sa spiska materijala"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Zamenski deo"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Deo 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Deo 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Izaberi povezan deo"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "Beleška za ovu relaciju"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Relacija između delova ne može biti kreirana između jednog istog dela"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Identična veza već postoji"
@@ -6465,203 +6469,199 @@ msgstr "Deo proizvođača koji se poklapa sa ovim brojem dela proizvođača već
msgid "Supplier part matching this SKU already exists"
msgstr "Deo dobavljača koji se opklapa sa ovim brojem dela dobavljača već postoji"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Naziv kategorije"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Izrađivanje"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Stavke sa zaliha"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Revizije"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Dobavljači"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Ukupne zalihe"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "Nealocirane zalihe"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "Varijante zaliha"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Dupliraj deo"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Kopiraj inicijalne podatke od drugog dela"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Početne zalihe"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Kreiraj deo sa početnom količinom zaliha"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Informacije o dobavljaču"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Dodaj inicijalne informacije o dobavljaču za ovaj deo"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Kopiraj parametre kategorije"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Kopiraj parametarske šablone sa izabrane kategorije dela"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Postojeća slika"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Ime fajla postojeće slike dela"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Fajl sa slikom ne postoji"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Validiraj ceo spisak materijala"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Može se izgraditi"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Minimalna cena"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Izmeni izračunatu vrednost za minimalnu cenu"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Minimalna valuta cene"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Maksimalna cena"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Izmeni izračunatu vrednost maksimalne cene"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Maksimalna valuta cene"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Ažuriraj"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Ažuriraj cene za ovaj deo"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Nija moguća konverzija iz dostavljen valute u {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Minimalna cena ne sme biti veća od maksimalne cene"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Maksimalna cena ne sme biti manja od minimalne cene"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "Izaberi nadređeni sklop"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "Izaberi komponentu dela"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Izaberi deo sa kog će se kopirati spisak materijala"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Ukloni postojeće podatke"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Ukloni postojeće stavke sa spiska materijala pre kopiranja"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Uključi nasleđeno"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Uključi stavke sa spiska materijala koje su nasleđene od šablonskih delova"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Preskoči nevažeće vrste"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Omogući ovu opciju za preskakanje nevažećih vrsta"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Kopiraj zamenske delove"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Kopiraj zamenske delove prilikom duplikacije stavki sa spiska materijala"
@@ -6732,108 +6732,108 @@ msgstr "Nema određene akcije"
msgid "No matching action found"
msgstr "Nema poklapajuće akcije"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Nema poklapanja za podatke sa bar koda"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Pronađeno poklapanje za podatke sa bar koda"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "Model nije podržan"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "Instanca modela nije pronađena"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Bar kod se poklapa sa postojećom stavkom"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Nema podudarajućih podataka o delovima"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Nema pronađenih podudarajućih delova dobavljača"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Više podudarajućih delova dobavljača pronađeno"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "Nema podudarajućeg plugina za podatke sa bar koda"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Podudarajući deo dobavljača"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Stavka je već primljena"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "Nijedan plugin se ne poklapa sa dobavljačevim bar kodom"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "Više pronađenih poklapajućih stavki porudžbine"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "Nema podudarajućih stavki porudbžine pronađenih"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "Nema dostavljenih naloga za prodaju"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "Bar kod se ne poklapa sa postojećom stavkom sa zaliha"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "Stavka sa zaliha se ne podudara sa stavkom porudbžine"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Nedovoljno dostupnih stavki"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "Stavka alocirana nalogu za prodaju"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Nema dovoljno informacija"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "Pronađena stavka"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "Deo dobavljača se ne poklapa sa stavkom porudžbine"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "Stavka porudžbine je već završena"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Dalje informacije neophodne za primanje ove stavke"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Primljene stavke sa naloga za kupovinu"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "Greška pri prijemu stavke porudžbine"
@@ -6972,7 +6972,7 @@ msgstr "Pruža ugrađenu podršku za bar kodove"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr "Mašinsko štampanje natpisa"
msgid "Provides support for printing using a machine"
msgstr "Pruža podršku za štampanje pomoću mašine"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "poslednji put korišćeno"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Opcije"
@@ -8072,7 +8072,7 @@ msgstr "Ukupno"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Serijski broj"
@@ -8142,7 +8142,7 @@ msgstr "Slika nije pronađena"
msgid "part_image tag requires a Part instance"
msgstr "part_image tag zahteva instancu dela"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "company_image tag zahteva instancu kompanije"
@@ -8158,7 +8158,7 @@ msgstr "Filtriraj po nadređenim lokacijama"
msgid "Include sub-locations in filtered results"
msgstr "Uključi podlokacije u filtriranim rezultatima"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "Nadređena lokacija"
@@ -8311,314 +8311,314 @@ msgstr "Tipovi lokacija zaliha"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Podrazumevana ikonica za sve lokacije koje nemaju podešenu ikonicu (opciono)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Lokacija zaliha"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Lokacija zaliha"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Vlasnik"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Izaberi vlasnika"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Stavke sa zaliha ne mogu biti direktno locirane u strukturnim lokacijama zaliha, ali mogu biti locirane u podređenim lokacijama."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Eksterna"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Ovo je eksterna lokacija zaliha"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Tip lokacije"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Tip lokacija zaliha za ovu lokaciju"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Ne možete postaviti ovu lokaciju zaliha kao strukturnu jer su već neke stavke locirane na njoj!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "Deo mora biti određen"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Stavka sa zaliha ne može biti locirana u strukturnim lokacijama zaliha!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Stavka sa zaliha ne može biti kreirana za virtuelne delove"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Deo tipa ('{self.supplier_part.part}') mora biti {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Količina mora biti 1 za stavku sa serijskim brojem"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Serijski broj ne može biti postavljen ukoliko je količina veća od 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Stavka ne može da pripada samoj sebi"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Stavka mora da ima referencu izgradnje ukoliko is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Referenca izgradnje ne ukazuje na isti objekat dela"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Nadređena stavka sa zaliha"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Osnovni deo"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Izaberi odgovarajući deo dobavljača za ovu stavku sa zaliha"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Gde je locirana ova stavka sa zaliha?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Pakovanje u kom je ova stavka sa zaliha"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Instalirano u"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Da li je ova stavka instalirana u drugu stavku?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Serijski broj za ovu stavku"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Šifra ture za ovu stavku sa zaliha"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Količina zaliha"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Izvorna gradnja"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Nalog za ovu stavku sa zaliha"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Potrošeno od strane"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Nalog za izradu koji je potrošio ovu stavku sa zaliha"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Izvorni nalog za kupovinu"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Nalog za kupovinu za ovu stavku sa zaliha"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Odredište naloga za prodaju"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Datum isteka za stavku sa zaliha. Zalihe će se smatrati isteklim nakon ovog datuma"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Obriši kad je potrošeno"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Obriši ovu stavku sa zaliha kada su zalihe potrošene"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Cena kupovine jedne jedinice u vreme kupovine"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Konvertovano u deo"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Deo nije postavljen kao deo koji je moguće pratiti"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Količina mora biti ceo broj"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Količina ne sme da pređe dostupnu količinu zaliha ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "Serijski brojevi moraju biti dostavljeni kao lista"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Količine se ne poklapaju sa serijskim brojevima"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "Test šablon ne postoji"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Stavka sa zaliha je dodeljena nalogu za prodaju"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Stavka sa zaliha je instalirana u drugu stavku"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Stavka sa zaliha sadrži druge stavke"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Stavka sa zaliha je dodeljena mušteriji"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Stavka sa zaliha je trenutno u produkciji"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Serijalizovane zalihe se ne mogu spojiti"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Dupliraj stavke sa zaliha"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Stavke sa zaliha se moraju odnositi na isti deo"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Stavke sa zaliha se moraju odnositi na isti deo dobavljača"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Statusne šifre zaliha moraju da se poklapaju"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Stavka se ne može pomeriti jer nije na zalihama"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "Praćenje stavke sa zaliha"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Ulazne beleške"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "Rezultat testa stavke sa zaliha"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Vrednost mora biti dostavljena za ovaj test"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Prilog mora biti dostavljen za ovaj test"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "Nevažeća vrednost za ovaj test"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Rezultat testa"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Vrednost završetka testa"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Prilog uz test rezultat"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Beleške sa testa"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "Stanica za testiranje"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "Identifikator stanice za testiranje gde je test izvršen"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Započeto"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "Vreme početka testa"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "Završeno"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "Vreme završetka testa"
@@ -8662,43 +8662,43 @@ msgstr "Izaberi deo za koji će se generisati serijski broj"
msgid "Quantity of serial numbers to generate"
msgstr "Količina serijskih brojeva koji će se generisati"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "Test šablon za ovaj rezultat"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "ID šablona ili ime testa mora biti dostavljeno"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "Vreme završetka testa ne može biti pre vremena početka testa"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Nadređena stavka"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "Nadređena stavka sa zaliha"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Koristi pakovanja prilikom dodavanja: količina je definisana brojem pakovanja"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Unesi serijske brojeve za nove stavke"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Dobavljački broj dela"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Količina ne sme da pređe dostupnu količinu zaliha ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Odredišna lokacija zaliha"
@@ -8805,103 +8805,103 @@ msgstr "Izaberi stavke kojoj će se promeniti status"
msgid "No stock items selected"
msgstr "Nije izabrana stavka"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Podlokacije"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "Lokacija nadređenih zaliha"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Deo mora biti za prodaju"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Stavka je alocirana nalogu za prodaju"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Stavka je alocirana nalogu za izradu"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Mušterija kojoj će se dodeliti stavke sa zaliha"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Izabrana kompanija nije mušterija"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Beleške dodeljivanja zaliha"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Lista stavki mora biti dostavljena"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Beleške spajanja zaliha"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Dozvoli neslagajuće dobavljače"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Dozvoli spajanje stavki sa različitim delovima dobavljača"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Dozvoli neslagajući status"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Dozvoli spajanje stavki sa različitim statusnim kodovima"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Bar dve stavke moraju biti dostavljene"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Nema promena"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Vrednost primarnog ključa stavke"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "Stavka nije na zalihama"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Beleške transakcija zaliha"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Nalozi za prodaju"
msgid "Return Orders"
msgstr "Nalozi za vraćanje"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Korisničko ime"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Ime"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Ime korisnika"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Prezime"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Prezime korisnika"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Adresa E-pošte korisnika"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Osoblje"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Da li ovaj korisnik ima dozvole koje ima osoblje?"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Super korisnik"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Da li je ovaj korisnik Super korisnik?"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Da li je nalog ovog korisnika aktivan?"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Vaš nalog je kreiran"
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Molimo vas koristite opciju resetovanja lozinke da biste se prijavili"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Dobrodošli u InvenTree"
diff --git a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po
index e57736a24b..62bddd4ea2 100644
--- a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Swedish\n"
"Language: sv_SE\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API-slutpunkt hittades inte"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Användaren har inte behörighet att se denna modell"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Kunde inte konvertera {original} till {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Ogiltigt antal angivet"
@@ -112,13 +112,13 @@ msgstr "Ange datum"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Anteckningar"
@@ -171,35 +171,35 @@ msgstr "Ta bort HTML-taggar från detta värde"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Anslutningsfel"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Servern svarade med ogiltig statuskod"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Undantag inträffade"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Servern svarade med ogiltigt innehållslängdsvärde"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Bilden är för stor"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Nedladdning av bilder överskred maximal storlek"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Fjärrservern returnerade tomt svar"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "Angiven URL är inte en giltig bildfil"
@@ -207,11 +207,11 @@ msgstr "Angiven URL är inte en giltig bildfil"
msgid "Log in to the app"
msgstr "Logga in på appen"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-postadress"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Du måste aktivera tvåfaktorsautentisering innan du kan göra något annat."
@@ -255,133 +255,133 @@ msgstr "Referensen måste matcha obligatoriskt mönster"
msgid "Reference number is too large"
msgstr "Referensnumret är för stort"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Ogiltigt val"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Namn"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Beskrivning"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Beskrivning (valfritt)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Sökväg"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown anteckningar (valfritt)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Streckkodsdata"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Tredje parts streckkodsdata"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Streckkodsdata"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Unik hash med streckkodsdata"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Befintlig streckkod hittades"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Serverfel"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Ett fel har loggats av servern."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Bild"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Måste vara ett giltigt nummer"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Valuta"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Välj valuta från tillgängliga alternativ"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Ogiltigt värde"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Fjärransluten bild"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL för fjärrbildsfil"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Nedladdning av bilder från fjärr-URL är inte aktiverad"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Ogiltig fysisk enhet"
msgid "Not a valid currency code"
msgstr "Inte en giltig valutakod"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Orderstatus"
@@ -562,21 +562,21 @@ msgstr "Orderstatus"
msgid "Parent Build"
msgstr "Föregående tillverkning"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Inkludera varianter"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Inkludera varianter"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "Inkludera varianter"
msgid "Part"
msgstr "Del"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategori"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Tillverkningen måste avbrytas innan den kan tas bort"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Valfri"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Spårad"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Testbar"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Allokerad"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Konsumerad"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Tillgänglig"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Byggorder"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Plats"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Tillverknings order referens"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Försäljningsorderreferens"
msgid "SalesOrder to which this build is allocated"
msgstr "Försäljningsorder till vilken detta bygge allokeras"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Källa Plats"
@@ -857,17 +857,17 @@ msgstr "Tillverknings status"
msgid "Build status code"
msgstr "Tillverkning statuskod"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Batchkod"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Batch-kod för denna byggutdata"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Skapad"
@@ -887,7 +887,7 @@ msgstr "Datum för slutförande"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Måldatum för färdigställande. Tillverkningen kommer att förfallas efter detta datum."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Slutförandedatum"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Användare som utfärdade denna tillverknings order"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Ansvarig"
@@ -913,12 +913,12 @@ msgstr "Ansvarig"
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Extern länk"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Länk till extern URL"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Projektkod"
@@ -960,7 +960,7 @@ msgstr "Tillverknings order {build} har slutförts"
msgid "A build order has been completed"
msgstr "En tillverknings order har slutförts"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr "Byggutgång är redan slutförd"
msgid "Build output does not match Build Order"
msgstr "Byggutgång matchar inte bygg order"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Bygg objekt"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Bygg objekt"
msgid "Quantity"
msgstr "Antal"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Byggobjekt måste ange en byggutgång, eftersom huvuddelen är markerad som spårbar"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Antal måste vara 1 för serialiserat lager"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Tilldelad kvantitet ({q}) får inte överstiga tillgängligt lagersaldo ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Lagerposten är överallokerad"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Allokeringsmängden måste vara större än noll"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Antal måste vara 1 för serialiserat lager"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Artikel i lager"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Källa lagervara"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Lagersaldo att allokera för att bygga"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Installera till"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Destination lagervara"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Delnamn"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Bygg utdata"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Byggutdata matchar inte överordnad version"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Serienummer"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Ange serienummer för att tillverkade produkter"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "En lista över tillverkade produkter måste anges"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Lagerplats för skrotade produkter"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Ignorera alla lagerallokeringar för skrotade produkter"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Plats för färdiga produkter"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Slutför utfall om lager inte har tilldelats fullt ut"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Ta bort ofullständiga produkter"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Ta bort eventuella produkter som inte har slutförts"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Acceptera ofullständig"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Acceptera att det önskade antalet produkter som inte har slutförts"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Tillverknings ordern är ofullständig"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Spårbar"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Ärvd"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Tillåt varianter"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Är länk"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Är fil"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Uppdaterad"
@@ -1558,7 +1554,7 @@ msgstr "Projektbeskrivning"
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Användare"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Pris"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktiv"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Hemlig"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Meddelande-ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Värd"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Id"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Titel"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Länk"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Sammanfattning"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Läs"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Bildfil"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Symbol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Definition"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Bilaga"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Saknad fil"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Extern länk saknas"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Modelltyp"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Välj fil att bifoga"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Kommentar"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Uppladdningsdatum"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Filstorlek"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Logisk nyckel"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Värde"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etikett"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Färg"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Modell"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Låst"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Källsträng"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Skapad"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Senast uppdaterad"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Parametermall"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Kryssruta"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Val"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Aktiverad"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Mall"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Data"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Streckkodsdata"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Tidsstämpel"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Sammanhang"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Svar"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Resultat"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Ett fel inträffade"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "E-postmeddelande"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Bekräftad"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Inget svar"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "Tråd-ID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Tråd"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "E-posttrådar"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Nyckel"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Väntande uppgifter"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Schemalagda uppgifter"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Misslyckade uppgifter"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Uppgifts-ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Lås"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Uppgiftsnamn"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Funktion"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Funktionsnamn"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argument"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Filnamn"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Modelltyp"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Ingen grupp"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Omstart krävs"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Serverinstans (Namn)"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Företagsnamn"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Internt företagsnamn"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Bas-URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Bas-URL för serverinstans"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Standardvaluta"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "dagar"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Ladda ner från URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Tillåt nedladdning av bilder och filer från extern URL"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Stöd för streckkoder"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Komponent"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Virtuell"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Delar är virtuella som standard"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Visa relaterade delar"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Visa relaterade delar för en del"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Visningsformat för delnamn"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Formatera för att visa artikelnamnet"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Interna priser"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Aktivera etikettutskrift"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Aktivera etikettutskrift från webbgränssnittet"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "Etikettbild DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Aktivera rapporter"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Aktivera generering av rapporter"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Debugläge"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Sidstorlek"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Standard sidstorlek för PDF-rapporter"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "Förhindra produktion från att slutföras tills alla nödvändiga tester är klara"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Aktivera registrering"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Aktivera SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Tillåtna domäner"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Tillverkare"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Företag"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Kontakt"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adress"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adresser"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Välj företag"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Primär adress"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Rad 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Adressrad 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Rad 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Adressrad 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Postnummer"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Land"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Basdel"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Välj del"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "MPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Leverantör"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Välj leverantör"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "Företagsnamn"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "I lager"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr "Fel"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Giltig"
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr "Ansluten"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Okänd"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr "Har projektkod"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Skapad av"
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Intern del"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Slutförd"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr "Försäljningsorder"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "Startdatum"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Måldatum"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Status"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Mål"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Kund"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Kontrollerad av"
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Allokeringsmängden måste vara större än noll"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Leverantörsnamn"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Streckkod"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr "Använder"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Delkategori"
@@ -5656,7 +5660,7 @@ msgstr "Delkategori"
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Ikon"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Ikon (valfritt)"
@@ -5693,655 +5697,655 @@ msgstr "Ikon (valfritt)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Standardvärde"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Artiklar"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Delnamn"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Är mall"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Variant av"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Nyckelord"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Delkategori"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revision"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Standardleverantör"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Datum"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Validerad"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Del 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Del 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Kategorinamn"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "Revisioner"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Leverantörer"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Uppdatera"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Hoppa över ogiltiga rader"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr "Ingen åtgärd specificerad"
msgid "No matching action found"
msgstr "Ingen matchande åtgärd hittades"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "Nivåer"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "senast använd"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "Alternativ"
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Serienummer"
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Ägare"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Välj ägare"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Platstyp"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Grunddel"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Konverterad till del"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Testresultat"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "Startad"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "Ingen förändring"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Användarnamn"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Förnamn"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Förnamn på användaren"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Efternamn"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Efternamn på användaren"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Avsändarens E-postadress"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personal"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Har den här användaren behörighet för personal"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superanvändare"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Är den här användaren en superanvändare"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Är detta användarkonto aktivt"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "Lösenord"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Ditt konto har skapats."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Använd funktionen för lösenordsåterställning för att logga in"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Välkommen till InvenTree"
diff --git a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po
index 048dbef3ec..569273feb5 100644
--- a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Thai\n"
"Language: th_TH\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "ไม่พบ API endpoint"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr ""
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr ""
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "ปริมาณสินค้าไม่ถูกต้อง"
@@ -112,13 +112,13 @@ msgstr "ป้อนวันที่"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "หมายเหตุ"
@@ -171,35 +171,35 @@ msgstr ""
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "การเชื่อมต่อขัดข้อง"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr ""
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr ""
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr ""
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "ไฟล์รูปภาพมีขนาดใหญ่เกินไป"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr ""
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr ""
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "อีเมล"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "ชื่อ"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "คำอธิบาย"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr ""
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr ""
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr ""
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "ข้อมูลบาร์โค้ด"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "บาร์โค้ดนี้มีในระบบแล้ว"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "เกิดข้อผิดพลาดที่เซิร์ฟเวอร์"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr ""
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "ต้องเป็นตัวเลข"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "สกุลเงิน"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr ""
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr ""
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr ""
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr ""
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr ""
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "สถานที่"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "จำนวนต้องมีค่ามากกว่า 0"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr ""
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr ""
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr ""
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "ผู้ใช้งาน"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr ""
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr ""
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "ลิงก์"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "ไฟล์แนบ"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "ไม่พบไฟล์"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "เลือกไฟล์ที่ต้องการแนบ"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "ความคิดเห็น"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr ""
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr ""
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr ""
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr ""
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "ชื่อไฟล์"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr ""
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr ""
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr ""
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr ""
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr ""
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr ""
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr ""
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr ""
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr ""
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr ""
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr ""
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr ""
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr ""
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "สำเร็จแล้ว"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "สถานะ"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "ชิ้นส่วน"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr ""
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr ""
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr ""
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr ""
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr ""
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr ""
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr ""
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr ""
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr ""
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr ""
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr ""
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr ""
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr ""
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr ""
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr ""
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr ""
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr ""
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr ""
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr ""
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "ยินดีต้อนรับเข้าสู่ Inventree"
diff --git a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po
index 83fdd0090f..097dd20002 100644
--- a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API uç noktası bulunamadı"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Toplu işlem için öge veya filtre listesi sağlanmalıdır"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Ögeler bir liste olarak sağlanmalıdır"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Geçersiz ögeler listesi sağlandı"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Filtreler bir sözlük olarak sağlanmalıdır"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Geçersiz filtreler sağlandı"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "Tüm filtre yalnızca true ile kullanılmalıdır"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Sağlanan ölçüte uygun bir eşleşme yok"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Değer verilmemiş"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr "Bu alan eşsiz olmalı."
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Kullanıcının bu modeli görüntüleme izni yok"
@@ -96,13 +96,13 @@ msgid "Could not convert {original} to {unit}"
msgstr "{original} birimi {unit} birimine dönüştürülemedi"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Geçersiz veri sağlandı"
#: InvenTree/exceptions.py:136
msgid "Error details can be found in the admin panel"
-msgstr "Hata detaylarını admin panelinde bulabilirsiniz"
+msgstr "Hata ayrıntıları yönetici panelinde bulunabilir"
#: InvenTree/fields.py:146
msgid "Enter date"
@@ -112,13 +112,13 @@ msgstr "Tarih giriniz"
msgid "Invalid decimal value"
msgstr "Geçersiz ondalık değer"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Notlar"
@@ -171,47 +171,47 @@ msgstr "Bu değerden HTML etiketlerini kaldır"
msgid "Data contains prohibited markdown content"
msgstr "Veriler yasaklanmış işaretleme içeriği içeriyor"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Bağlantı hatası"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Sunucu geçersiz durum kodu ile cevap verdi"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "İstisna oluştu"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Sunucu geçersiz Content-Length değeriyle yanıt verdi"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
-msgstr "Resim boyutu çok büyük"
-
-#: InvenTree/helpers_model.py:167
-msgid "Image download exceeded maximum size"
-msgstr "Resim indirme boyutu izin verilenden büyük"
+msgstr "Görsel boyutu çok büyük"
#: InvenTree/helpers_model.py:172
+msgid "Image download exceeded maximum size"
+msgstr "Görsel indirme maksimum boyutu aştı"
+
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Uzak sunucu boş cevap döndü"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
-msgstr "Sağlanan URL geçerli bir resim dosyası değil"
+msgstr "Sağlanan URL geçerli bir görsel dosyası değil"
#: InvenTree/magic_login.py:31
msgid "Log in to the app"
msgstr "Uygulamaya giriş yapın"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "E-posta"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Başka bir şey yapmadan önce iki faktörlü kimlik doğrulamayı etkinleştirme gerekir."
@@ -255,135 +255,135 @@ msgstr "Referans {pattern} deseniyle mutlaka eşleşmeli"
msgid "Reference number is too large"
msgstr "Referans sayısı çok fazla"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Geçersiz seçim"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Adı"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Açıklama"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Açıklama (isteğe bağlı)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Yol"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Aynı kaynak altında birden fazla aynı isim kullanılamaz"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown notları (isteğe bağlı)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Barkod Verisi"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Üçüncü parti barkod verisi"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Barkod Hash"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Barkod verisinin benzersiz hash'i"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Var olan barkod bulundu"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "Görev Başarısızlığı"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "Arka plan çalışan görevi '{f}' {n} denemeden sonra başarısız oldu"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Sunucu Hatası"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Bir hafta sunucu tarafından kayıt edildi."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
-msgstr "Resim"
+msgstr "Görsel"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Geçerli bir numara olmalı"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Para birimi"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
-msgstr "Var olan seçeneklerden bir döviz birimi seçin"
+msgstr "Mevcut seçeneklerden para birimini seçin"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "Bu alan boş olamaz."
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Geçersiz değer"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
-msgstr "Uzaktan Görüntüler"
+msgstr "Uzak Görsel"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
-msgstr "Uzaktan görüntü dosya URL'si"
+msgstr "Uzak görselin dosya URL'si"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
-msgstr "Uzak URL'den resim indirmek etkinleştirilmedi"
+msgstr "Uzak URL'den görsel indirme etkin değil"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
-msgstr "Uzak URL'den görüntü indirilemedi"
+msgstr "Uzak URL'den görsel indirilemedi"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "Geçersiz içerik türü biçimi"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "İçerik türü bulunamadı"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
-msgstr ""
+msgstr "İçerik türü gerekli mixin sınıfı ile eşleşmemektedir"
#: InvenTree/setting/locales.py:20
msgid "Arabic"
@@ -553,8 +553,8 @@ msgstr "Geçersiz fiziksel birim"
msgid "Not a valid currency code"
msgstr "Geçerli bir para birimi kodu değil"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Sipariş Durumu"
@@ -562,21 +562,21 @@ msgstr "Sipariş Durumu"
msgid "Parent Build"
msgstr "Üst Yapım İşi"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "Varyantları Dahil Et"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "Varyantları Dahil Et"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,15 +596,15 @@ msgstr "Varyantları Dahil Et"
msgid "Part"
msgstr "Parça"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Kategori"
#: build/api.py:131 build/api.py:135
msgid "Ancestor Build"
-msgstr "Ata Yapım"
+msgstr "Kök Üretim"
#: build/api.py:152 order/api.py:134
msgid "Assigned to me"
@@ -666,102 +666,102 @@ msgstr "Maksimum Tarih"
msgid "Exclude Tree"
msgstr "Ağacı Hariç Tut"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
-msgstr "Yapımın silinebilmesi için önce iptal edilmesi gerekir"
+msgstr "Üretim silinemeden önce iptal edilmelidir"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Sarf Malzemesi"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "İsteğe Bağlı"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Montaj"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "İzlenen"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Test Edilebilir"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
-msgstr "Ödenmemiş Sipariş"
+msgstr "Sipariş Açık"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
-msgstr "Ayrıldı"
+msgstr "Tahsis Edildi"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Tüketildi"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Mevcut"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Siparişte"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
-msgstr "Yapım İşi Emri"
+msgstr "Üretim Emri"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Konum"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "Çıktı"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
-msgstr "Çıkış stok öğesi kimliğine göre filtrele. Kurulmamış üretim öğelerini bulmak için ‘null’ kullan."
+msgstr "Çıktı stok kalemi ID'sine göre filtrele. Takılmamış üretim kalemlerini bulmak için ‘null’ kullan."
#: build/models.py:119 users/ruleset.py:31
msgid "Build Orders"
-msgstr "Yapım İşi Emirleri"
+msgstr "Üretim Emirleri"
#: build/models.py:169
msgid "Assembly BOM has not been validated"
-msgstr "Montaj malzeme listesi doğrulanmadı"
+msgstr "Montaj BOM listesi henüz doğrulanmadı"
#: build/models.py:176
msgid "Build order cannot be created for an inactive part"
-msgstr "İnaktif bir parça için yapım siparişi oluşturulamaz"
+msgstr "Pasif bir parça için üretim emri oluşturulamaz"
#: build/models.py:183
msgid "Build order cannot be created for an unlocked part"
-msgstr "Kilidi açılmış bir parça için yapım siparişi oluşturulamaz"
+msgstr "Kilidi açılmış bir parça için üretim emri oluşturulamaz"
#: build/models.py:201
msgid "Build orders can only be externally fulfilled for purchaseable parts"
-msgstr "Satın alınabilir parçaların yapım emirleri yalnızca harici olarak yerine getirilebilir"
+msgstr "Harici üretim emirleri yalnızca satın alınabilir parçalar için yerine getirilebilir"
#: build/models.py:208 order/models.py:370
msgid "Responsible user or group must be specified"
@@ -769,7 +769,7 @@ msgstr "Sorumlu kullanıcı veya grup belirtilmelidir"
#: build/models.py:213
msgid "Build order part cannot be changed"
-msgstr "Yapım siparişi parçası değiştirilemez"
+msgstr "Üretim emri parçası değiştirilemez"
#: build/models.py:218 order/models.py:383
msgid "Target date must be after start date"
@@ -777,11 +777,11 @@ msgstr "Hedef tarih başlangıç tarihinden sonra olmalıdır"
#: build/models.py:246
msgid "Build Order Reference"
-msgstr "Yapım İşi Emri Referansı"
+msgstr "Üretim Emri Referansı"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -791,15 +791,15 @@ msgstr "Referans"
#: build/models.py:256
msgid "Brief description of the build (optional)"
-msgstr "Yapımın kısa açıklaması (isteğe bağlı)"
+msgstr "Üretimin kısa açıklaması (isteğe bağlı)"
#: build/models.py:266
msgid "BuildOrder to which this build is allocated"
-msgstr "Bu yapım işinin tahsis edildiği yapım işi emri"
+msgstr "Bu üretimin tahsis edildiği üretim emri"
#: build/models.py:275
msgid "Select part to build"
-msgstr "Yapım işi için parça seçin"
+msgstr "Üretilecek parçayı seçin"
#: build/models.py:280
msgid "Sales Order Reference"
@@ -807,23 +807,23 @@ msgstr "Satış Emri Referansı"
#: build/models.py:285
msgid "SalesOrder to which this build is allocated"
-msgstr "Bu yapım işinin tahsis edildiği satış emri"
+msgstr "Bu üretimin tahsis edildiği satış siparişi"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Kaynak Konum"
#: build/models.py:296
msgid "Select location to take stock from for this build (leave blank to take from any stock location)"
-msgstr "Bu yapım işi için stok alınacak konumu seçin (her hangi bir stok konumundan alınması için boş bırakın)"
+msgstr "Bu üretim için stok alınacak konumu seçin (herhangi bir stok konumundan amak için boş bırakın)"
#: build/models.py:302
msgid "External Build"
-msgstr "Harici Yapım"
+msgstr "Harici Üretim"
#: build/models.py:303
msgid "This build order is fulfilled externally"
-msgstr "Bu yapım emri harici olarak yerine getirilmiştir"
+msgstr "Bu üretim emri harici olarak tamamlanmıştır"
#: build/models.py:308
msgid "Destination Location"
@@ -835,11 +835,11 @@ msgstr "Tamamlanmış ögelerin saklanacağı konumu seçiniz"
#: build/models.py:317
msgid "Build Quantity"
-msgstr "Yapım İşi Miktarı"
+msgstr "Üretim Miktarı"
#: build/models.py:320
msgid "Number of stock items to build"
-msgstr "Yapım işi stok kalemlerinin sayısı"
+msgstr "Üretilecek stok kalemlerinin sayısı"
#: build/models.py:324
msgid "Completed items"
@@ -851,33 +851,33 @@ msgstr "Tamamlanan stok kalemlerinin sayısı"
#: build/models.py:330
msgid "Build Status"
-msgstr "Yapım İşi Durumu"
+msgstr "Üretim Durumu"
#: build/models.py:335
msgid "Build status code"
-msgstr "Yapım işi durum kodu"
+msgstr "Üretim durum kodu"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Sıra numarası"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
-msgstr "Yapım işi çıktısı için sıra numarası"
+msgstr "Bu üretim çıktısının parti kodu"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Oluşturulma tarihi"
#: build/models.py:358
msgid "Build start date"
-msgstr "İhtiyaca bağlı sipariş başlangıç tarihi"
+msgstr "Üretim başlangıç tarihi"
#: build/models.py:359
msgid "Scheduled start date for this build order"
-msgstr "Bu ihtiyaca bağlı siparişi için planlanan başlangıç tarihi"
+msgstr "Bu üretim emri için planlanan başlangıç tarihi"
#: build/models.py:365
msgid "Target completion date"
@@ -885,9 +885,9 @@ msgstr "Hedef tamamlama tarihi"
#: build/models.py:367
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."
+msgstr "Üretimin tamamlanması için hedef tarih. Bu tarihten sonra üretim gecikmiş olacak."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Tamamlama tarihi"
@@ -897,47 +897,47 @@ msgstr "tamamlayan"
#: build/models.py:389
msgid "Issued by"
-msgstr "Veren"
+msgstr "Düzenleyen"
#: build/models.py:390
msgid "User who issued this build order"
-msgstr "Bu yapım işi emrini veren kullanıcı"
+msgstr "Bu üretim emrini düzenleyen kullanıcı"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Sorumlu"
#: build/models.py:400
msgid "User or group responsible for this build order"
-msgstr "Bu yapım siparişinden sorumlu kullanıcı veya grup"
+msgstr "Bu üretim emrinden sorumlu kullanıcı veya grup"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Harici Bağlantı"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Harici URL'ye bağlantı"
#: build/models.py:412
msgid "Build Priority"
-msgstr "Yapım Önceliği"
+msgstr "Üretim Önceliği"
#: build/models.py:415
msgid "Priority of this build order"
-msgstr "Bu yapım siparişinin önceliği"
+msgstr "Bu üretim emrinin önceliği"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Proje Kodu"
#: build/models.py:424
msgid "Project code for this build order"
-msgstr "Bu yapım siparişi için proje kodu"
+msgstr "Bu üretim emri için proje kodu"
#: build/models.py:677
msgid "Cannot complete build order with open child builds"
@@ -949,70 +949,70 @@ msgstr "Eksik çıktılar varken üretim emri tamamlanamaz"
#: build/models.py:701 build/models.py:831
msgid "Failed to offload task to complete build allocations"
-msgstr "Yapıma ayrılanları tamamlamak için boşaltma görevi başarısız oldu"
+msgstr "Üretim tahsisatını tamamlamak için boşaltma görevi başarısız oldu"
#: build/models.py:724
#, python-brace-format
msgid "Build order {build} has been completed"
-msgstr "{build} yapım siparişi tamamlandı"
+msgstr "{build} üretim emri tamamlandı"
#: build/models.py:730
msgid "A build order has been completed"
-msgstr "Bir yapım siparişi tamamlandı"
+msgstr "Bir üretim emri tamamlandı"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "İzlenebilir parçalar için seri numaraları sağlanmalıdır"
#: build/models.py:1043 build/models.py:1130
msgid "No build output specified"
-msgstr "Yapım işi çıktısı belirtilmedi"
+msgstr "Hiçbir üretim çıktısı belirtilmedi"
#: build/models.py:1046
msgid "Build output is already completed"
-msgstr "Yapım işi çıktısı zaten tamamlanmış"
+msgstr "Üretim çıktısı zaten tamamlanmış"
#: build/models.py:1049
msgid "Build output does not match Build Order"
-msgstr "Yapım işi çıktısı, yapım işi emri ile eşleşmiyor"
+msgstr "Üretim çıktısı, üretim emri ile eşleşmiyor"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Miktar sıfırdan büyük olmalıdır"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Miktar çıktı miktarından büyük olamaz"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
-msgstr "Stok kalemi tüm gerekli testleri geçmedi"
+msgstr "Üretim çıktısı tüm gerekli testleri geçmedi"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
-msgstr "{serial} yapım çıktısı gerekli testleri geçemedi"
+msgstr "{serial} üretim çıktısı gerekli testleri geçmedi"
#: build/models.py:1230
msgid "Cannot partially complete a build output with allocated items"
-msgstr "Ayrılmış öğeler varken üretim çıktısı tamamlanamaz"
+msgstr "Tahsisli kalemler içeren bir üretim çıktısı kısmi olarak tamamlanamaz"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
-msgstr "Yapım Siparişi Satır Ögesi"
+msgstr "Üretim Emri Satırı"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
-msgstr "Nesne yap"
+msgstr "Üretim nesnesi"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,429 +1030,421 @@ msgstr "Nesne yap"
msgid "Quantity"
msgstr "Miktar"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
-msgstr "Yapım siparişi için gereken miktar"
+msgstr "Üretim emri için gereken miktar"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "Tüketilen Stok Miktarı"
-#: build/models.py:1773
+#: build/models.py:1771
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"
+msgstr "Ana parça izlenebilir olarak işaretlendiğinden, üretim kalemi bir üretim çıktısı belirtmelidir"
-#: build/models.py:1784
-#, python-brace-format
-msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
-msgstr "Ayrılan miktar ({q}) mevcut stok miktarını ({a}) aşmamalı"
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Seçilen stok kalemi BOM satırı ile eşleşmiyor"
-#: build/models.py:1805 order/models.py:2547
-msgid "Stock item is over-allocated"
-msgstr "Stok kalemi fazladan tahsis edilmiş"
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır"
-
-#: build/models.py:1816
+#: build/models.py:1859
msgid "Quantity must be 1 for serialized stock"
msgstr "Seri numaralı stok için miktar bir olmalı"
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Seçilen stok ögesi malzeme listesi satırıyla eşleşmiyor"
+#: build/models.py:1869
+#, python-brace-format
+msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
+msgstr "Tahsis edilen miktar ({q}) mevcut stok miktarını ({a}) aşmamalıdır"
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "Ayrılan miktar, mevcut stok miktarını aşıyor"
+#: build/models.py:1886 order/models.py:2547
+msgid "Stock item is over-allocated"
+msgstr "Stok kalemi fazladan tahsis edilmiş"
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Stok Kalemi"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Kaynak stok kalemi"
-#: build/models.py:1976
-msgid "Stock quantity to allocate to build"
-msgstr "Yapım işi için tahsis edilen stok miktarı"
-
-#: build/models.py:1985
-msgid "Install into"
-msgstr "Kurulduğu yer"
-
#: build/models.py:1986
+msgid "Stock quantity to allocate to build"
+msgstr "Üretime tahsis edilecek stok miktarı"
+
+#: build/models.py:1995
+msgid "Install into"
+msgstr "Kur"
+
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Hedef stok kalemi"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
-msgstr "Yapım Düzeyi"
+msgstr "Üretim Seviyesi"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Parça Adı"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Proje Kodu Etiketi"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
-msgstr "Yapım Çıktısı"
+msgstr "Üretim Çıktısı"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
-msgstr "Yapım çıktısı üst yapım ile eşleşmiyor"
+msgstr "Üretim çıktısı üst üretim ile eşleşmiyor"
+
+#: build/serializers.py:225
+msgid "Output part does not match BuildOrder part"
+msgstr "Çıktı parçası üretim emri parçası ile eşleşmiyor"
+
+#: build/serializers.py:229
+msgid "This build output has already been completed"
+msgstr "Bu üretim çıktısı zaten tamamlandı"
#: build/serializers.py:243
-msgid "Output part does not match BuildOrder part"
-msgstr "Çıktı parçası Yapım Siparişi parçası ile eşleşmiyor"
-
-#: build/serializers.py:247
-msgid "This build output has already been completed"
-msgstr "Bu yapım çıktısı zaten tamamlandı"
-
-#: build/serializers.py:261
msgid "This build output is not fully allocated"
-msgstr "Bu yapım çıktısı tam ayrılmadı"
+msgstr "Bu üretim çıktısı tam tahsis edilmedi"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
-msgstr "Yapım işi çıktısı için miktarını girin"
+msgstr "Üretim çıktısının miktarını girin"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "İzlenebilir parçalar için tamsayı miktar gerekir"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
-msgstr "Malzeme listesi izlenebilir parçalar içerdiğinden tamsayı miktar gereklidir"
+msgstr "Ürün ağacı izlenebilir parçalar içerdiğinden tamsayı miktar gereklidir"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Seri Numaraları"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
-msgstr "Yapım işi çıktısı için seri numaraları girin"
+msgstr "Üretim çıktıları için seri numaraları girin"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
-msgstr "Yapım çıktısı için stok konumu"
+msgstr "Üretim çıktısı için stok konumu"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
-msgstr "Seri Numaralarını Otomatik Ayır"
+msgstr "Seri Numaralarını Otomatik Tahsis Et"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
-msgstr "Gerekli ögeleri eşleşen seri numaralarıyla otomatik ayır"
+msgstr "Eşleşen seri numaralı gerekli kalemleri otomatik tahsis et"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Şu seri numaraları zaten varlar veya geçersizler"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
-msgstr "Bir yapım çıktıları listesi sağlanmalıdır"
+msgstr "Bir üretim çıktıları listesi sağlanmalıdır"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Hurdaya ayrılan çıktılar için stok konumu"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Ayırmaları İptal Et"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Hurdaya ayrılan çıktılar için yapılan tüm stok ayırmalarını iptal et"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
-msgstr "Yapım çıktı(larını) hurdaya ayırma nedeni"
+msgstr "Üretim çıktı(larını) hurdaya ayırma nedeni"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
-msgstr "Tamamlanan yapım çıktıları içi konum"
+msgstr "Tamamlanan üretim çıktıları içi konum"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Tamamlanmamış Ayırmayı Onayla"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
-msgstr "Stok tamamen ayrılmamışsa çıktıları tamamla"
+msgstr "Stok henüz tamamen tahsis edilmemşse çıktıları tamamla"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
-msgstr "Ayrılan Stoku Tüket"
+msgstr "Tahsis Edilen Stoku Tüket"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
-msgstr "Bu yapım için zaten ayrılmış olan tüm stokları tüket"
+msgstr "Bu üretim için zaten tahsis edilmiş olan tüm stokları tüket"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Tamamlanmamış Çıktıları Kaldır"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
-msgstr "Tamamlanmamış tüm yapım çıktılarını sil"
+msgstr "Henüz tamamlanmamış tüm üretim çıktılarını sil"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "İzin verilmedi"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
-msgstr "Bu yapım siparişi tarafından tüketildi olarak kabul et"
+msgstr "Bu üretim emri tarafından tüketildi olarak kabul et"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
-msgstr "Bu yapım emrini tamamlamadan önce iade et"
+msgstr "Bu üretim emrini tamamlamadan önce tahsisi kaldır"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
-msgstr "Fazla Ayrılmış Stok"
+msgstr "Aşırı Tahsis Edilmiş Stok"
+
+#: build/serializers.py:759
+msgid "How do you want to handle extra stock items assigned to the build order"
+msgstr "Üretim emrine atanan ek stok kalemlerini nasıl işlemek istersiniz"
+
+#: build/serializers.py:770
+msgid "Some stock items have been overallocated"
+msgstr "Bazı stok kalemleri aşırı tahsis edilmiştir"
+
+#: build/serializers.py:775
+msgid "Accept Unallocated"
+msgstr "Tahsis Edilmeyeni Kabul Et"
#: build/serializers.py:777
-msgid "How do you want to handle extra stock items assigned to the build order"
-msgstr "Yapım siparişine atanan ekstra stok öğelerini nasıl ele almak istersiniz"
+msgid "Accept that stock items have not been fully allocated to this build order"
+msgstr "Stok kalemlerinin bu üretim emrine tamamen tahsis edilmediğini kabul et"
#: build/serializers.py:788
-msgid "Some stock items have been overallocated"
-msgstr "Bazı stok ögeleri fazla ayrıldı"
-
-#: build/serializers.py:793
-msgid "Accept Unallocated"
-msgstr "Ayrılmamışı Kabul Et"
-
-#: build/serializers.py:795
-msgid "Accept that stock items have not been fully allocated to this build order"
-msgstr "Stok öğelerinin bu yapım siparişine tam olarak ayrılmadığını kabul edin"
-
-#: build/serializers.py:806
msgid "Required stock has not been fully allocated"
msgstr "Gerekli stok tamamen tahsis edilemedi"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Tamamlanmamış Kabul et"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
-msgstr "Gerekli sayıda derleme çıktısının tamamlanmadığını kabul edin"
+msgstr "Gereken miktarda üretim çıktısının tamamlanmadığını kabul et"
+
+#: build/serializers.py:806
+msgid "Required build quantity has not been completed"
+msgstr "Gereken üretim miktarı tamamlanmadı"
+
+#: build/serializers.py:818
+msgid "Build order has open child build orders"
+msgstr "Üretim emrinin açık alt üretim emirleri var"
+
+#: build/serializers.py:821
+msgid "Build order must be in production state"
+msgstr "Üretim emri üretim durumunda olmalıdır"
#: build/serializers.py:824
-msgid "Required build quantity has not been completed"
-msgstr "Gerekli yapım işi miktarı tamamlanmadı"
-
-#: build/serializers.py:836
-msgid "Build order has open child build orders"
-msgstr "Yapım siparişinin açık alt yapım emirleri var"
-
-#: build/serializers.py:839
-msgid "Build order must be in production state"
-msgstr "Yapım siparişi üretim durumunda olmalıdır"
-
-#: build/serializers.py:842
msgid "Build order has incomplete outputs"
-msgstr "Yapım siparişinin tamamlanmamış çıktıları var"
+msgstr "Üretim emrinde eksik çıktılar var"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
-msgstr "Yapım Satırı"
+msgstr "Üretim Satırı"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
-msgstr "Yapım çıktısı"
+msgstr "Üretim çıktısı"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
-msgstr "Yapım çıktısı aynı yapımı göstermelidir"
+msgstr "Üretim çıktısı aynı üretimi göstermelidir"
+
+#: build/serializers.py:910
+msgid "Build Line Item"
+msgstr "Üretim Satırı"
#: build/serializers.py:928
-msgid "Build Line Item"
-msgstr "Yapım Satırı Ögesi"
-
-#: build/serializers.py:946
msgid "bom_item.part must point to the same part as the build order"
-msgstr "bom_item.part yapım siparişi aynı olan parçayı göstermelidir"
+msgstr "bom_item.part üretim emri ile aynı parçayı göstermelidir"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
-msgstr "Öge stokta olmalıdır"
+msgstr "Kalem stokta olmalıdır"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Mevcut miktar ({q}) aşıldı"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
-msgstr "İzlenen parçaların ayrılması için yapım çıktısı belirtilmelidir"
+msgstr "İzlenen parçaların tahsisi için üretim çıktısı belirtilmelidir"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
-msgstr "İzlenmeyen parçaların ayrılması için yapım çıktısı belirlenemez"
+msgstr "İzlenmeyen parçaların tahsisi için üretim çıktısı belirtilemez"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Ayrılma ögeleri sağlanmalıdır"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Parçaların alınacağı stok konumu (herhangi bir konumdan almak için boş bırakın)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
-msgstr "Konum Çıkar"
+msgstr "Konumu Hariç Tut"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
-msgstr "Bu seçilen konumdan stok ögelerini içerme"
+msgstr "Bu seçilen konumdan stok kalemlerini hariç tut"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Birbirinin Yerine Kullanılabilir Stok"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
-msgstr "Birden çok konumdaki stok ögeleri birbirinin yerine kullanılabilir"
+msgstr "Birden fazla konumdaki stok kalemleri birbirinin yerine kullanılabilir"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Yedek Stok"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Yedek parçaların ayrılmasına izin ver"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "İsteğe Bağlı Ögeler"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
-msgstr "Sipariş yapmak için isteğe bağlı ML ögelerini ayır"
+msgstr "İsteğe bağlı BOM kalemlerini üretim emrine tahsis et"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Otomatik ayırma görevini başlatma başarısız oldu"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "ML Referansı"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
-msgstr "ML Parça Kimliği"
+msgstr "BOM Parça ID"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "ML Parça Adı"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "Yap"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Tedarikçi Parçası"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
-msgstr "Ayrılan Miktar"
+msgstr "Tahsis Edilen Miktar"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
-msgstr "Yapım Referansı"
+msgstr "Üretim Referansı"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
-msgstr "Parça Sınıfı Adı"
+msgstr "Parça Kategorisi Adı"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Takip Edilebilir"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
-msgstr "Miras Alındı"
+msgstr "Devralınmış"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
-msgstr "Çeşide İzin Ver"
+msgstr "Varyantlara İzin Ver"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "ML Ögesi"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Üretimde"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
-msgstr "Üretim için planlandı"
+msgstr "Üretim için Planlandı"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Harici Stok"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Mevcut Stok"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Mevcut Yedek Stok"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
-msgstr "Mevcut Turev Stoku"
+msgstr "Mevcut Varyant Stok"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
-msgstr "Tüketilen miktar, ayrılan miktarı aşıyor"
+msgstr "Tüketilen miktar tahsis edilen miktarı aşıyor"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "Stok tüketimi için isteğe bağlı notlar"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
-msgstr "Üretim öğesi doğru üretim emrine işaret etmelidir"
+msgstr "Üretim kalemi doğru üretim emrini göstermelidir"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
-msgstr "Yinelenen üretim öğesi tahsisi"
+msgstr "Üretim kalemi tahsisini yinele"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
-msgstr "Üretim satırı doğru üretim emrine işaret etmelidir"
+msgstr "Üretim satırı doğru üretim emrini göstermelidir"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
-msgstr "Yinelenen üretim öğesi tahsisi"
+msgstr "Üretim satırı tahsisini yinele"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
-msgstr "En az bir öğe veya satır sağlanmalıdır"
+msgstr "En az bir kalem veya satır sağlanmalıdır"
#: build/status_codes.py:11 generic/states/tests.py:21
#: generic/states/tests.py:131 order/status_codes.py:12
@@ -1482,7 +1474,7 @@ msgstr "Tamamlandı"
#: build/tasks.py:231
msgid "Stock required for build order"
-msgstr "Yapım siparişi için gereken stok"
+msgstr "Üretim emri için gereken stok"
#: build/tasks.py:241
#, python-brace-format
@@ -1491,26 +1483,26 @@ msgstr "Üretim emri {build} ek stok gerektiriyor"
#: build/tasks.py:265
msgid "Overdue Build Order"
-msgstr "Gecikmiş Yapım Siparişi"
+msgstr "Geciken Üretim Emri"
#: build/tasks.py:270
#, python-brace-format
msgid "Build order {bo} is now overdue"
-msgstr "{bo} yapım siparişi şimdi gecikti"
+msgstr "{bo} üretim emri şimdi gecikti"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Link Olanlar"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "Dosya Olanlar"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Kullanıcının bu ekleri silmek için izni yok"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Kullanıcının bu eki silmek için izni yok"
@@ -1530,7 +1522,11 @@ msgstr "Geçerli bir para birimi kodu sağlanmamış"
msgid "No plugin"
msgstr "Eklenti yok"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Proje Kodu Etiketi"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Güncellendi"
@@ -1558,7 +1554,7 @@ msgstr "Proje açıklaması"
msgid "User or group responsible for this project"
msgstr "Bu projeden sorumlu kullanıcı veya grup"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "Ayarlar anahtarı"
@@ -1590,550 +1586,550 @@ msgstr "Değer doğrulama kontrollerini geçemiyor"
msgid "Key string must be unique"
msgstr "Anahtar dizesi benzersiz olmalı"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Kullanıcı"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
-msgstr "Fiyat düşürme miktarı"
+msgstr "Fiyat kademesi miktarı"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Fiyat"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Belirtilen miktardaki birim fiyat"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Bitiş Noktası"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Bu web kancasının alındığı uç nokta"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Bu web kancası için ad"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Aktif"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
-msgstr "Bu web kancası etkin mi"
+msgstr "Bu web kancası aktif mi"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Token"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Erişim için belirteç"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Gizli"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "HMAC için paylaşılan gizli bilgi"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
-msgstr "Mesaj Kimliği"
+msgstr "Mesaj ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Bu mesaj için benzersiz tanımlayıcı"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Sağlayıcı"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Bu mesajın alındığı ana bilgisayar"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Başlık"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Bu mesajın başlığı"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Gövde"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Bu mesajın gövdesi"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Bu mesajın alındığı uç nokta"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Üzerinde çalışıldı"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Bu mesajdaki iş bitirildi mi?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Kimlik"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Başlık"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Bağlantı"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Yayınlandı"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Yazar"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Özet"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Oku"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Haberi okudunuz mu?"
-#: common/models.py:1752
-msgid "Image file"
-msgstr "Görsel yükleyin"
-
-#: common/models.py:1764
-msgid "Target model type for this image"
-msgstr "Bu resim için hedef model türü"
-
#: common/models.py:1768
-msgid "Target model ID for this image"
-msgstr "Bu resim için hedef model ID"
+msgid "Image file"
+msgstr "Görsel dosyası"
-#: common/models.py:1790
+#: common/models.py:1780
+msgid "Target model type for this image"
+msgstr "Bu görsel için hedef model türü"
+
+#: common/models.py:1784
+msgid "Target model ID for this image"
+msgstr "Bu görsel için hedef model ID"
+
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "Özel Birim"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "Birim simgesi benzersiz olmalıdır"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Birim adı geçerli bir tanımlayıcı olmalıdır"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Birim adı"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Sembol"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "İsteğe bağlı birim simgesi"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Tanımlama"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Birim tanımlaması"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Ek"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Eksik dosya"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Bozuk dış bağlantı"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "Model türü"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
-msgstr "Resim için hedef model türü"
+msgstr "Görsel için hedef model türü"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Eklenecek dosyayı seç"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Yorum"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "Ek yorumu"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Yükleme tarihi"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Dosyanın yüklendiği tarih"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Dosya Boyutu"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Bayt cinsinden dosya boyutu"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "Ek için belirtilen model türü geçersiz"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "Özel Durum"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "Özel Durumlar"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "Referans Durum Seti"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "Bu özel durum ile genişletilen durum seti"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "Mantıksal anahtar"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "İş mantığında bu özel duruma eşit olan durum mantıksal anahtarı"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Değer"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "Modeller veritabanına kaydedilecek sayısal değer"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "Durumun adı"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Etiket"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "Ön yüzde gösterilecek etiket"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Renk"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "Ön yüzde gösterilecek renk"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Model"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "Bu durumun ilişkilendirildiği model"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "Model seçilmelidir"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "Anahtar Seçilmelidir"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "Mantıksal anahtar seçilmelidir"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "Anahtar, mantık anahtarından farklı olmalıdır"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "Geçerli bir referans durum sınıfı sağlanmalıdır"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "Anahtar, referans durumunun mantık anahtarlarından farklı olmalıdır"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "Mantık anahtarı, referans durumunun mantık anahtarları içinde olmalıdır"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "İsim, referans durumunun isimlerinden farklı olmalıdır"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Seçim Listesi"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "Seçim Listeleri"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "Seçim listesinin adı"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "Seçim listesinin açıklaması"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Kilitli"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "Bu seçim listesi kilitli mi?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "Bu seçim listesi kullanılabilir mi?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "Kaynak Eklentisi"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "Seçim listesini sağlayan eklenti"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "Kaynak Dize"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "Bu liste için kullanılan kaynağı belirten isteğe bağlı dize"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "Varsayılan Girdi"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "Bu seçim listesi için varsayılan girdi"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Oluşturuldu"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "Seçim listesinin oluşturulduğu tarih ve saat"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Son Güncelleme"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "Seçim listesinin son güncellendiği tarih ve saat"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "Seçim Listesi Girdisi"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "Seçim Listesi Girişleri"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "Bu girdinin ait olduğu seçim listesi"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "Seçim listesi girdisinin değeri"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "Seçim listesi girdisi için etiket"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "Seçim listesi girdisinin açıklaması"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "Bu seçim listesi girdisi aktif mi?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Parametre Şablonu"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "Parametre Şablonları"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
-msgstr ""
+msgstr "Onay kutusu parametrelerinin birimleri olamaz"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
-msgstr ""
+msgstr "Onay kutusu parametrelerinin seçenekleri olamaz"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
-msgstr ""
+msgstr "Seçenekler eşsiz olmalıdır"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Parametre şablon adı benzersiz olmalıdır"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "Bu parametre şablonu için hedef modeli türü"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
-msgstr ""
+msgstr "Parametre Adı"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Birim"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
-msgstr ""
+msgstr "Bu parametre için fiziksel birimler"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
-msgstr ""
+msgstr "Parametre açıklaması"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
-msgstr ""
+msgstr "Onay kutusu"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
-msgstr ""
+msgstr "Bu parametre bir onay kutusu mu?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
-msgstr ""
+msgstr "Seçenekler"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
-msgstr ""
+msgstr "Bu parametre için geçerli seçenekler (virgül ile ayrılmış)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
-msgstr ""
+msgstr "Bu parametre için seçim listesi"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Etkin"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "Bu parametre şablonu etkin mi?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "Parametre"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "Parametreler"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
-msgstr ""
+msgstr "Parametre değeri için geçersiz seçim"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "Parametre için belirtilen model türü geçersiz"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "Model ID"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "Bu parametre için hedef modelin ID'si"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Şablon"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "Parametre şablonu"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Veri"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
-msgstr ""
+msgstr "Parametre Değeri"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr "Not"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
-msgstr ""
+msgstr "İsteğe bağlı not alanı"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "Barkod Taraması"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "Barkod verisi"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "Barkodu taratan kullanıcı"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "Zaman damgası"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "Barkod taramasının tarihi ve saati"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "Barkodu işleyen URL uç noktası"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Bağlam"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "Barkod taraması için bağlam verisi"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "Yanıt"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "Barkod taramasından gelen yanıt verisi"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Sonuç"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "Barkod taraması başarılı mıydı?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "Bir hata oluştu"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "NVE-ER: E-posta günlüğünün silinmesi korumalı. Silmeye izin vermek için INVENTREE_PROTECT_EMAIL_LOG ayarını False olarak ayarlayın."
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "E-posta İletisi"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "E-posta İletileri"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "Duyuruldu"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "Gönderildi"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "Başarısız"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "Teslim edildi"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "Onaylandı"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "Gelen"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "Giden"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "Yanıt Yok"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "Teslimat Takibi"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "Okumayı Takip Et"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "Tıklamayı Takip Et"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
-msgstr "Global Kimlik"
+msgstr "Global ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "Bu ileti için tanımlayıcı (harici sistem tarafından sağlanabilir)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "Konu Kimliği"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "Bu ileti konusu için tanımlayıcı (harici sistem tarafından sağlanabilir)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "Konu"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "Bu mesaja bağlı konu"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
-msgstr ""
+msgstr "Öncelik"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "E-Posta Konusu"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "E-posta Konuları"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Anahtar"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "Bu konu için benzersiz anahtar (konuyu tanımlamak için kullanılır)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "Bu konu için benzersiz tanımlayıcı"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "Dahili Olarak Başlatıldı"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "Bu konu dahili olarak mı başlatıldı?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "Konunun oluşturulduğu tarih ve saat"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "Konunun son güncellendiği tarih ve saat"
@@ -2339,105 +2335,113 @@ msgstr "{verbose_name} iptal edildi"
msgid "A order that is assigned to you was canceled"
msgstr "Size atanmış bir emir iptal edildi"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
-msgstr "Alınan Ürünler"
+msgstr "Teslim Alınan Kalemler"
#: common/notifications.py:75
msgid "Items have been received against a purchase order"
-msgstr "Bir satın alma siparişine karşılık öğeler teslim alındı"
+msgstr "Kalemler, bir satın alma siparişine istinaden teslim alındı"
#: common/notifications.py:82
msgid "Items have been received against a return order"
-msgstr "Bir iade siparişine karşılık öğeler teslim alındı"
+msgstr "Kalemler, bir iade siparişine istinaden teslim alındı"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "Ayarın bir ortam değişkeni tarafından üstüne yazılıp yazılmadığını belirtir"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "Üstüne Yaz"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Çalışıyor"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Bekleyen Görevler"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Planlanan Görevler"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Başarısız Görevler"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "Görev ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "Benzersiz Görev ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Kilit"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Kilit Zamanı"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Görev Adı"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Fonksiyon"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Fonksiyon Adı"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Argümanlar"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Görev Argümanları"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Anahtar Argümanlar"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Anahtar görev argümanları"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Dosya adı"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "Model Tipi"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "Kullanıcının bu model için ek oluşturma veya düzenleme izni yok"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "Kullanıcı bu model için parametre oluşturma veya düzenleme iznine sahip değil"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "Seçim listesi kilitli"
@@ -2445,1162 +2449,1166 @@ msgstr "Seçim listesi kilitli"
msgid "No group"
msgstr "Grup yok"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "Site URL'si yapılandırma tarafından kilitlendi"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Yeniden başlatma gerekli"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Sunucunun yeniden başlatılmasını gerektiren bir ayar değişti"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Bekleyen taşıma işlemleri"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Bekleyen veritabanı taşıma sayısı"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "Aktif uyarı kodları"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "Aktif uyarı kodlarının bir sözlüğü"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "Örnek ID"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "Bu InvenTree örneği için benzersiz tanımlayıcı"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
-msgstr ""
+msgstr "Duyuru ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
-msgstr ""
+msgstr "Sunucu durum bilgisinde sunucu ID'sini göster (oturum açılmadan)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Sunucu Örneği adı"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Sunucu örneği için sözce (string) açıklayıcı"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Örnek adını kullan"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Örnek adını başlık çubuğunda kullan"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "`Hakkında` gösterimini kısıtla"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "`Hakkında` kipini yalnızca süper kullanıcılara göster"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Şirket adı"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Dahili şirket adı"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "Ana URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "Sunucu örneğinn temel URL'i"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Varsayılan Para Birimi"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Fiyat hesaplamaları için temel para birimini seçin"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "Desteklenen Para Birimleri"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "Desteklenen para birimi kodlarının listesi"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
-msgstr "Döviz Güncelleme Aralığı"
+msgstr "Para Birimi Güncelleme Aralığı"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Döviz kurlarını şu sıklıkla güncelle (etkisizleştirmek için sıfır yapın)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "günler"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
-msgstr "Döviz Güncelleme Eklentisi"
+msgstr "Para Birimi Güncelleme Eklentisi"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
-msgstr "Kullanılacak döviz güncelleme eklentisi"
+msgstr "Kullanılacak para birimi güncelleme eklentisi"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "URL'den indir"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
-msgstr "Harici URL'den resim ve dosyaların indirilmesine izin ver"
+msgstr "Harici URL'den uzak görseller ve dosyalar indirmeye izin ver"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "İndirme Boyutu Sınırı"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
-msgstr "Uzak resimler için izin verilebilir maksimum indirme boyutu"
+msgstr "Uzak görsel için izin verilebilir maksimum indirme boyutu"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "URL'den indirmek için kullanılan kullanıcı aracısı"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
-msgstr "Harici URL'den resim ve dosya indirmek için kullanılan kullanıcı aracısını geçersiz kılmaya izin ver (varsayılan için boş bırakın)"
+msgstr "Harici URL'lerden görsel ve dosya indirirken kullanılan kullanıcı aracısının (user-agent) değiştirilmesine izin ver (varsayılan için boş bırakın)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "Sıkı URL Doğrulama"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "URL'leri doğrularken şema tanımlamasını gerekli kıl"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
-msgstr "Güncelleme Denetleme Aralığı"
+msgstr "Güncelleme Kontrol Aralığı"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
-msgstr "Güncellemeleri şu sıklıkla denetle (etkisizleştirmek için sıfır yapın)"
+msgstr "Güncellemeleri şu sıklıkla kontrol et (etkisizleştirmek için sıfır yapın)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Otomatik Yedekleme"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Veritabanı ve ortam dosyalarını otomatik yedeklemeyi etkinleştir"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Otomatik Yedekleme Aralığı"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Otomatik yedekleme olayları arasındaki gün sayısını belirtin"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Görev Silme Aralığı"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Arkaplan görev sonuçları belirtilen gün sayısı kadar sonra silinecektir"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Hata Günlüğü Silme Aralığı"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Hata günlükleri belirtilen gün sayısı kadar sonra silinecektir"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Bildirim Silme Aralığı"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Kullanıcı bildirimleri belirtilen gün sayısı kadar sonra silinecektir"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
-msgstr ""
+msgstr "E-posta Silme Aralığı"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
-msgstr ""
+msgstr "E-postalar belirtilen gün sayısı sonrasında silinecektir"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
-msgstr ""
+msgstr "E-posta Kaydını Koru"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
-msgstr ""
+msgstr "E-posta kayıt girdilerinin silinmesini engelle"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Barkod Desteği"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Web arayüzünde barkod tarayıcı desteğini etkinleştir"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
-msgstr ""
+msgstr "Barkod Sonuçlarını Depola"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
-msgstr ""
+msgstr "Barkod tarama sonuçlarını veritabanına depola"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
-msgstr ""
+msgstr "Maksimum Barkod Tarama Sayısı"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
-msgstr ""
+msgstr "Depolanacak maksimum barkod tarama sonuçları sayısı"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Barkod Girdi Gecikmesi"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Barkod girdi işleme gecikme süresi"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Barkod Web Kamerası Desteği"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Tarayıcıda web kamerası aracılığıyla barkod taramaya izin ver"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "Barkod Verisini Göster"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "Barkod verisini tarayıcıda metin olarak görüntüle"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "Barkod Üreteci Eklentisi"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "Dahili barkod üretimi için kullanılacak eklenti"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Parça Revizyonları"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Parça için revizyon alanını etkinleştir"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "Yalnızca Montaj Revizyonu"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "Yalnızca montaj parçaları için revizyona izin ver"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "Montajdan Silmeye İzin Ver"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "Bir montajda kullanılan parçaları silmeye izin ver"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "DPN Regex"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Parça DPN eşleştirmesi için Düzenli İfade Kalıbı (Regex)"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Yinelenen DPN'ye İzin Ver"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Birden çok parçanın aynı DPN'yi paylaşmasına izin ver"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "DPN Düzenlemeye İzin Ver"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Parçayı düzenlerken DPN değiştirmeye izin ver"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Parça ML Verisini Kopyala"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Bir parçayo çoğaltırken varsayılan olarak ML verisini kopyala"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Parça Parametre Verisini Kopyala"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Bir parçayı çoğaltırken varsayılan olarak parametre verisini kopyala"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Parça Test Verisini Kopyala"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Bir parçayı çoğaltırken varsayılan olarak test verisini kopyala"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Kategori Paremetre Sablonu Kopyala"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Parça oluştururken kategori parametre şablonlarını kopyala"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Parçaları varsayılan olan şablondur"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Parçalar varsayılan olarak başka bileşenlerden monte edilebilir"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Bileşen"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Parçalar varsayılan olarak alt bileşen olarak kullanılabilir"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Satın Alınabilir"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Parçalar varsayılan olarak satın alınabilir"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Satılabilir"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Parçalar varsayılan olarak satılabilir"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Parçalar varsayılan olarak takip edilebilir"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Sanal"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Parçalar varsayılan olarak sanaldır"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "İlgili parçaları göster"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
-msgstr "Bir parça için ilgili parçaları göster"
+msgstr "Bir parça için ilgili parçaları görüntüle"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Başlangıç Stok Verisi"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Yeni bir parça eklerken başlangıç stoku oluşturmaya izin ver"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
-msgstr "Başlangıç Sağlayıcı Verisi"
+msgstr "İlk Tedarikçi Bilgileri"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
-msgstr "Yeni bir parça oluştururken başlangıç sağlayıcı verisi oluşturmaya izin ver"
+msgstr "Yeni bir parça eklerken ilk tedarikçi bilgilerinin oluşturulmasına izin ver"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Parça Adı Görüntüleme Biçimi"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Parça adını görüntüleme biçimi"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
-msgstr "Parça Sınıfının Varsayılan Simgesi"
+msgstr "Parça Kategorisi Varsayılan Simgesi"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
-msgstr "Parça sınıfı için varsayılan simge (boş bırakılırsa simge kullanılmaz)"
+msgstr "Parça kategorisi için varsayılan simge (boş bırakılırsa simge kullanılmaz)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Minimum Fiyatlandırma Ondalık Basamakları"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
-msgstr "Fiiyatlandırma verisini oluştururken gösterilecek ondalık basamakların minimum sayısı"
+msgstr "Fiyat verilerinde görüntülenecek maksimum ondalık hane sayısı"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Maksimum Fiyatlandırma Ondalık Basamakları"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
-msgstr "Fiiyatlandırma verisini oluştururken gösterilecek ondalık basamakların maksimum sayısı"
+msgstr "Fiyat verilerinde görüntülenecek maksimum ondalık hane sayısı"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
-msgstr "Sağlayıcı Fiyatlandırmasını Kullan"
+msgstr "Tedarikçi Fiyatlandırmasını Kullan"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
-msgstr "Genel fiyatlandırma hesaplamalarına sağlayıcı fiyat aralıklarını ekle"
+msgstr "Tedarikçi fiyat kademelerini genel fiyat hesaplamalarına dahil et"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Satın Alma Geçmişini Geçersiz Kılma"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
-msgstr "Geçmiş satınalma siparişi fiyatlandırması, sağlayıcı fiyat aralıklarını geçersiz kılar"
+msgstr "Tarihsel satın alma siparişi fiyatlandırması, tedarikçi fiyat kademelerini geçersiz kılar"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
-msgstr "Stok Ögesi Fiyatlandırmasını Kullan"
+msgstr "Stok Kalemi Fiyatlandırmasını Kullan"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Fiyatlandırma hesaplamaları için elle girilen stok verisinin fiyatlandırmasını kullan"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
-msgstr "Stok Ögesi Fiyatlandırma Yaşı"
+msgstr "Stok Kalemi Fiyatlandırma Süresi"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Bu gün sayısından daha eski olan stok kalemlerini fiyatlandırma hesaplamalarından hariç tut"
-#: common/setting/system.py:584
-msgid "Use Variant Pricing"
-msgstr "Türev Fiyatlandırması Kullan"
-
-#: common/setting/system.py:585
-msgid "Include variant pricing in overall pricing calculations"
-msgstr "Genel fiyat hesaplamalarına türev fiyatlarını da ekle"
-
-#: common/setting/system.py:590
-msgid "Active Variants Only"
-msgstr "Yalnızca Etkin Türevler"
-
-#: common/setting/system.py:592
-msgid "Only use active variant parts for calculating variant pricing"
-msgstr "Türev fiyatlandırması için yalnızca etkin türev parçaları kullan"
-
#: common/setting/system.py:598
-msgid "Auto Update Pricing"
-msgstr ""
+msgid "Use Variant Pricing"
+msgstr "Varyant Fiyatlandırması Kullan"
-#: common/setting/system.py:600
-msgid "Automatically update part pricing when internal data changes"
-msgstr ""
+#: common/setting/system.py:599
+msgid "Include variant pricing in overall pricing calculations"
+msgstr "Genel fiyat hesaplamalarına varyant fiyatlarını dahil et"
+
+#: common/setting/system.py:604
+msgid "Active Variants Only"
+msgstr "Yalnızca Aktif Varyantlar"
#: common/setting/system.py:606
+msgid "Only use active variant parts for calculating variant pricing"
+msgstr "Varyant fiyatlandırmasını hesaplamak için yalnızca aktif varyant parçaları kullan"
+
+#: common/setting/system.py:612
+msgid "Auto Update Pricing"
+msgstr "Fiyatlandırmayı Otomatik Güncelle"
+
+#: common/setting/system.py:614
+msgid "Automatically update part pricing when internal data changes"
+msgstr "Dahili veri değişince parça fiyatını otomatik güncelle"
+
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Fiyatlandırmayı Yeniden Oluşturma Aralığı"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Parça fiyatlandrımasının otomatik güncellenmesinden önceki gün sayısı"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Dahili Fiyatlar"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Parçalar için dahili fiyatları etkinleştir"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Dahili Fiyat Geçersiz Kılma"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Varsa, dahili fiyatlar fiyat aralığı hesaplarını geçersiz kılar"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Etiket yazdırmayı etkinleştir"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Web arayüzünden etiket yazdırmayı etkinleştir"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
-msgstr "Etiket Resmi DPI Değeri"
+msgstr "Etiket Görseli DPI Değeri"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
-msgstr "Resim dosyaları üretirken etiket yazdırma eklentilerine sağlanacak DPI çözünürlüğü"
+msgstr "Görsel dosyaları üretirken etiket yazdırma eklentilerine sağlanacak DPI çözünürlüğü"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Raporları Etkinleştir"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Rapor üretimini etkinleştir"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Hata Ayıklama Modu"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
-msgstr "Raporları hata ayıklama modunda üret (HTML çıktısı)"
+msgstr "Raporları hata ayıklama modunda oluştur (HTML çıktısı)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "Rapor Hatalarını Günlüğe Kaydet"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "Raporlar üretirken oluşan hataları günlüğe kaydet"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Sayfa Boyutu"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "PDF raporlar için varsayılan sayfa boyutu"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Parametre Birimlerini Zorunlu Kıl"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Birimler sağlanırsa, parametre değerleri belirtilen birimlere uymalıdır"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Küresel Çapta Benzersiz Seri Numaraları"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
-msgstr "Stok ögeleri için seri numaraları küresel çapta benzersiz olmalıdır"
+msgstr "Stok kalemleri için seri numaraları küresel çapta benzersiz olmalıdır"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Tükenen Stoku Sil"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
-msgstr "Bir stok ögesi tükendiğinde varsayılan davranışı belirler"
+msgstr "Bir stok kalemi tükendiğinde varsayılan davranışı belirler"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Parti Kodu Şablonu"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
-msgstr "Stok ögelerine varsayılan parti kodlarını üretmek için şablon"
+msgstr "Stok kalemleri için varsayılan parti kodları oluşturma şablonu"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Stok Sona Erme Tarihi"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Stokun sona erme işlevselliğini etkinleştir"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Süresi Dolan Stoku Sat"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Süresi dolan stok satışına izin ver"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Stok Eskime Süresi"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
-msgstr "Stok öğelerinin son kullanma tarihi geçmeden eskimiş sayıldığı gün sayısı"
+msgstr "Stok kalemlerinin son kullanma tarihinden önce eskimiş sayılacağı gün sayısı"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
-msgstr "Yapımın Süresi Geçmiş Stoku"
+msgstr "Süresi Dolmuş Stoktan Üretim"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
-msgstr "Süresi geçmiş stok ile yapıma izin ver"
+msgstr "Süresi dolmuş stok ile üretime izin ver"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Stok Sahipliği Kontrolü"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
-msgstr "Stok konumu ve ögeler üzerinde sahiplik kontrolünü etkinleştirin"
+msgstr "Stok konumu ve kalemleri üzerinde sahiplik kontrolünü etkinleştir"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Varsayılan Stok Konumu Simgesi"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Stok konumu için varsayılan simge (boşsa simge yok demektir)"
-#: common/setting/system.py:729
-msgid "Show Installed Stock Items"
-msgstr "Kurulu Stok Ögelerini Göster"
-
-#: common/setting/system.py:730
-msgid "Display installed stock items in stock tables"
-msgstr "Stok tablolarında kurulu stok ögelerini göster"
-
-#: common/setting/system.py:735
-msgid "Check BOM when installing items"
-msgstr "Ögelerin kurulumunu yaparken ML'i kontrol et"
-
-#: common/setting/system.py:737
-msgid "Installed stock items must exist in the BOM for the parent part"
-msgstr "Kurulu stok ögeleri üst parçanın ML'nde mevcut olmalıdır"
-
#: common/setting/system.py:743
+msgid "Show Installed Stock Items"
+msgstr "Takılı Stok Kalemlerini Göster"
+
+#: common/setting/system.py:744
+msgid "Display installed stock items in stock tables"
+msgstr "Stok tablolarında takılı stok kalemlerini görüntüle"
+
+#: common/setting/system.py:749
+msgid "Check BOM when installing items"
+msgstr "Kalemlerin kurulumunu yaparken BOM'u kontrol et"
+
+#: common/setting/system.py:751
+msgid "Installed stock items must exist in the BOM for the parent part"
+msgstr "Takılı stok kalemleri üst parçanın BOM listesinde mevcut olmalıdır"
+
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "Stok Dışı Aktarıma İzin Ver"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
-msgstr "Stokta olmayan ögelerin stok konumları arasında aktarılmasına izin ver"
+msgstr "Stokta olmayan kalemlerin stok konumları arasında aktarılmasına izin ver"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
-msgstr "Yapım Siparişi Referans Kalıbı"
+msgstr "Üretim Emri Referans Şablonu"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
-msgstr "Yapım Siparişi referans alanını üretmek için gerekli kalıp"
+msgstr "Üretim emri referans alanını üretmek için gerekli şablon"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "Sorumlu Sahip Gerektir"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "Her siparişe sorumlu bir yetkili atanmalıdır."
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
-msgstr "Aktif Parça Gerekli"
+msgstr "Aktif Parça Gerektirir"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
-msgstr "Etkin olmayan parçalar için yapı sırası oluşturulmasını önleyin."
+msgstr "Pasif parçalarla üretim emri oluşturmayı engelle"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "Kilitli Parça Gerekli"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
-msgstr "Kilitlenmemiş parçalar için yapı sırası oluşturulmasını engelle."
+msgstr "Kilidi açılmış parçalarla üretim emri oluşturmayı engelle"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "Geçerli BOM gereklidir."
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
-msgstr "BOM doğrulanmadan yapı sırası oluşturulmasını engelle."
+msgstr "BOM henüz doğrulanmadan üretim emri oluşturmayı engelle"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "Kapalı Alt Siparişler Gerekli"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
-msgstr "Tüm alt siparişler kapatılana kadar yapı sırası tamamlanmasını engelle."
+msgstr "Tüm alt emirler kapatılana kadar üretim emrini tamamlamayı engelle"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
-msgstr ""
+msgstr "Harici Üretim Emirleri"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
-msgstr ""
+msgstr "Harici üretim emri işlevselliğini etkinleştir"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "Testler Geçene Kadar Engelle"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
-msgstr "Tüm gerekli testler geçene kadar yapı çıktıları tamamlanmasını engelle"
+msgstr "Tüm gerekli testler geçene kadar üretim çıktılarını tamamlamayı engelle"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "İade Siparişlerini Etkinleştir"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
-msgstr "Kullanıcı arayüzünde iade siparişi işlevselliğini etkinleştirin."
+msgstr "Kullanıcı arayüzünde iade siparişi işlevselliğini etkinleştir"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Kullanıcı arayüzünde iade siparişi işlevselliğini etkinleştirin."
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "İade Sipariş referans alanı oluşturmak için gerekli desen"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Tamamlanan İade Siparişlerini Düzenle"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
-msgstr "Tamamlandıktan sonra iade emirlerini düzenlemeye izin ver"
+msgstr "Tamamlandıktan sonra iade siparişlerini düzenlemeye izin ver"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Satış Siparişi Referans Şablonu"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Satış Siparişi referans alanını üretmek için gerekli şablon"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Satış Siparişi Varsayılan Gönderi"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Satış siparişleriyle varsayılan gönderi oluşturmayı etkinleştir"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
-msgstr "Tamamlanmış Satış Siparişini Düzenle"
+msgstr "Tamamlanmış Satış Siparişlerini Düzenle"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Gönderilen veya tamamlanan satış siparişlerini düzenlemeye izin ver"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
-msgstr ""
+msgstr "Kontrol Gerektiren Gönderi"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
-msgstr ""
+msgstr "Kalemler kontrol edilene dek gönderilerin tamamlanmasını engelle"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "Gönderilen Siparişleri Tamamlandı Olarak İmle"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
-msgstr "Gönderildi olarak imlenen satış siparişleri \"gönderildi\" durumu atlanarak otomatik olarak tamamlanacaktır"
+msgstr "Gönderildi olarak işaretli satış siparişleri \"gönderildi\" durumu atlanarak otomatik olarak tamamlanacaktır"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Satın Alma Siparişi Referans Şablonu"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Satın Alma Siparişi referans alanını üretmek için gerekli şablon"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Tamamlanan Satın Alma Siparişlerini Düzenle"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Gönderildikten veya tamamlandıktan sonra satın alma siparişlerini düzenlemeye izin ver"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
-msgstr ""
+msgstr "Para Birimini Dönüştür"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
-msgstr ""
+msgstr "Stok alınırken kalem değerini temel para birimine dönüştür"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Satın Alma Siparişlerini Otomatik Tamamla"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
-msgstr "Tüm satır ögeleri alındığında satın alma siparişini otomatikmen tamamlandı olarak imle"
+msgstr "Tüm satırlar alındığında satın alma siparişini otomatikmen tamamlandı olarak işaretle"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
-msgstr "Şifreyi unuttumu etkinleştir"
+msgstr "Şifremi unuttum seçeneğini etkinleştir"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Giriş yapma sayfasında şifremi unuttum işlevini etkinleştir"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Kayıt olmayı etkinleştir"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Giriş yapma sayfalarında kullanıcılar için kendini kaydetme işlevini etkinleştir"
-#: common/setting/system.py:922
-msgid "Enable SSO"
-msgstr ""
-
-#: common/setting/system.py:923
-msgid "Enable SSO on the login pages"
-msgstr ""
-
-#: common/setting/system.py:928
-msgid "Enable SSO registration"
-msgstr ""
-
-#: common/setting/system.py:930
-msgid "Enable self-registration via SSO for users on the login pages"
-msgstr ""
-
#: common/setting/system.py:936
-msgid "Enable SSO group sync"
-msgstr ""
+msgid "Enable SSO"
+msgstr "SSO Etkinleştir"
-#: common/setting/system.py:938
-msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
-msgstr ""
+#: common/setting/system.py:937
+msgid "Enable SSO on the login pages"
+msgstr "Kullanıcı girişi sayfalarında SSO etkinleştir"
+
+#: common/setting/system.py:942
+msgid "Enable SSO registration"
+msgstr "SSO ile kayıt olmayı etkinleştir"
#: common/setting/system.py:944
-msgid "SSO group key"
-msgstr ""
-
-#: common/setting/system.py:945
-msgid "The name of the groups claim attribute provided by the IdP"
-msgstr ""
+msgid "Enable self-registration via SSO for users on the login pages"
+msgstr "Giriş yapma sayfalarında kullanıcılar için SSO ile kendini kaydetmeyi etkinleştir"
#: common/setting/system.py:950
-msgid "SSO group map"
-msgstr ""
+msgid "Enable SSO group sync"
+msgstr "SSO grup eşitlemeyi etkinleştir"
#: common/setting/system.py:952
+msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
+msgstr "InvenTree gruplarını IdP tarafından sağlanan gruplar ile eşitlemeyi etkinleştir"
+
+#: common/setting/system.py:958
+msgid "SSO group key"
+msgstr "SSO grup anahtarı"
+
+#: common/setting/system.py:959
+msgid "The name of the groups claim attribute provided by the IdP"
+msgstr "IdP tarafından sağlanan talep özniteliğinin adı"
+
+#: common/setting/system.py:964
+msgid "SSO group map"
+msgstr "SSO grup haritası"
+
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "SSO gruplarından yerel InvenTree gruplarına bir eşleme. Yerel grup yoksa, oluşturulacaktır."
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
-msgstr ""
+msgstr "SSO dışındaki grupları kaldır"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
-msgstr ""
+msgstr "IdP arka ucu tarafından olmayan, kullanıcıya atanmış grupların kaldırılıp kaldırılmayacağı. Bu ayarı etkisizleştirmek güvenlik sorunlarına neden olabilir"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "E-posta Gerekir"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
-msgstr ""
+msgstr "Üyelik sırasında kullanıcının eposta sağlamasını gerektir"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
-msgstr ""
+msgstr "SSO kullanıcıları otomatik doldur"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Kullanıcı ayrıntılarını TOA hesabı verisinden otomatik olarak doldur"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Postayı iki kez gir"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Hesap oluştururken kullanıcıların postalarını iki kez girmelerini iste"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Şifreyi iki kez gir"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Hesap oluştururken kullanıcıların şifrelerini iki kez girmesini iste"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Alanlara izin ver"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Belirli alanlara hesap açmayı kısıtla (virgülle ayrılmış, @ ile başlayan)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Hesap oluştururken grup"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "Yeni kullanıcıların kayıt sırasında atanacağı grup. Eğer TOA grup eşitlemesi etkinse, yalnızca ıdP'den hiçbir grup atanamazsa bu grup ayarlanır."
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "ÇFKD'yi Zorunlu Kıl"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Kullanıcıların çok faktörlü kimlik doğrulamasını kullanması gerekmektedir."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
-msgstr ""
+msgstr "Başlangıçta eklentileri kontrol et"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
-msgstr ""
+msgstr "Başlangıçta tüm eklentilerin kurulmuş olduğunu kontrol et - konteyner ortamlarında etkinleştir"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
-msgstr ""
+msgstr "Eklenti güncellemelerini kontrol et"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
-msgstr ""
+msgstr "Kurulu eklentiler için periyodik güncelleme kontrolünü etkinleştir"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
-msgstr ""
+msgstr "URL entegrasyonunu etkinleştir"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
-msgstr "URL yönlendirmesi eklemek için eklentileri etkinleştirin"
+msgstr "URL yönlendirmesi eklemek için eklentileri etkinleştir"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
-msgstr ""
+msgstr "Gezinti entegrasyonunu etkinleştir"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
-msgstr ""
+msgstr "Eklentilerin gezintiye entegre edilmesini etkinleştir"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
-msgstr ""
+msgstr "Uygulama entegrasyonunu etkinleştir"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
-msgstr ""
+msgstr "Uygulamalar eklemek için eklentileri etkinleştir"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
-msgstr ""
+msgstr "Zamanlama entegrasyonunu etkinleştir"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
-msgstr ""
+msgstr "Zamanlanmış görevleri çalıştırmak için eklentileri etkinleştir"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
-msgstr ""
+msgstr "Olay entegrasyonunu etkinleştir"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Eklentilerin olaylara yanıt verebilmesini etkinleştirin"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
-msgstr ""
-
-#: common/setting/system.py:1064
-msgid "Enable plugins to integrate into the user interface"
-msgstr ""
-
-#: common/setting/system.py:1070
-msgid "Enable mail integration"
-msgstr ""
-
-#: common/setting/system.py:1071
-msgid "Enable plugins to process outgoing/incoming mails"
-msgstr ""
-
-#: common/setting/system.py:1077
-msgid "Enable project codes"
-msgstr ""
-
-#: common/setting/system.py:1078
-msgid "Enable project codes for tracking projects"
-msgstr ""
+msgstr "Arayüz entegrasyonunu etkinleştir"
#: common/setting/system.py:1083
+msgid "Enable plugins to integrate into the user interface"
+msgstr "Eklentilerin kullanıcı arayüzüne entegre olmasını etkinleştir"
+
+#: common/setting/system.py:1089
+msgid "Enable mail integration"
+msgstr "Posta entegrasyonunu etkinleştir"
+
+#: common/setting/system.py:1090
+msgid "Enable plugins to process outgoing/incoming mails"
+msgstr "Eklentilerin giden/gelen postaları işlemesini etkinleştir"
+
+#: common/setting/system.py:1096
+msgid "Enable project codes"
+msgstr "Proje kodlarını etkinleştir"
+
+#: common/setting/system.py:1097
+msgid "Enable project codes for tracking projects"
+msgstr "Projeleri izlemek için proje kodlarını etkinleştir"
+
+#: common/setting/system.py:1102
msgid "Enable Stock History"
-msgstr ""
+msgstr "Stok Geçmişini Etkinleştir"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
-msgstr ""
+msgstr "Geçmiş stok seviyelerini ve değerini kaydetme işlevini etkinleştir"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
-msgstr ""
+msgstr "Harici Konumları Hariç Tut"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
-msgstr ""
+msgstr "Harici konumlardaki stok kalemlerini stok geçmişi hesaplamalarından hariç tut"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
-msgstr ""
+msgstr "Otomatik Stok Sayımı Periyodu"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
-msgstr ""
+msgstr "Otomatik stok geçmişi kaydı arasındaki gün sayısı"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
-msgstr ""
+msgstr "Eski Stok Geçmişi Girdilerini Sil"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
-msgstr ""
+msgstr "Belirtilen gün sayısından daha eski olan stok geçmişi girdilerini sil"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
-msgstr ""
-
-#: common/setting/system.py:1116
-msgid "Stock history entries will be deleted after specified number of days"
-msgstr ""
-
-#: common/setting/system.py:1123
-msgid "Display Users full names"
-msgstr "Kullancıların tam isimlerini göster"
-
-#: common/setting/system.py:1124
-msgid "Display Users full names instead of usernames"
-msgstr ""
-
-#: common/setting/system.py:1129
-msgid "Display User Profiles"
-msgstr ""
-
-#: common/setting/system.py:1130
-msgid "Display Users Profiles on their profile page"
-msgstr ""
+msgstr "Stok Geçmişi Silme Aralığı"
#: common/setting/system.py:1135
-msgid "Enable Test Station Data"
-msgstr ""
+msgid "Stock history entries will be deleted after specified number of days"
+msgstr "Stok geçmişi girdileri belirtilen gün sayısı kadar sonra silinecektir"
-#: common/setting/system.py:1136
-msgid "Enable test station data collection for test results"
-msgstr ""
-
-#: common/setting/system.py:1141
-msgid "Enable Machine Ping"
-msgstr ""
+#: common/setting/system.py:1142
+msgid "Display Users full names"
+msgstr "Kullancıların tam isimlerini görüntüle"
#: common/setting/system.py:1143
+msgid "Display Users full names instead of usernames"
+msgstr "Kullanıcı adı yerine kullanıcıların tam adlarını görüntüle"
+
+#: common/setting/system.py:1148
+msgid "Display User Profiles"
+msgstr "Kullanıcı Profillerini Göster"
+
+#: common/setting/system.py:1149
+msgid "Display Users Profiles on their profile page"
+msgstr "Kullanıcıların Profillerini kendi profil sayfalarında göster"
+
+#: common/setting/system.py:1154
+msgid "Enable Test Station Data"
+msgstr "Test İstasyon Verisini Etkinleştir"
+
+#: common/setting/system.py:1155
+msgid "Enable test station data collection for test results"
+msgstr "Test sonuçları için test istasyonundan veri toplamayı etkinleştir"
+
+#: common/setting/system.py:1160
+msgid "Enable Machine Ping"
+msgstr "Makine Pingini Etkinleştir"
+
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
-msgstr ""
+msgstr "Durumlarını kontrol etmek için kayıtlı makinelerin periyodik ping görevini etkinleştir"
#: common/setting/user.py:23
msgid "Inline label display"
-msgstr ""
+msgstr "Satır içi etiket görüntüleme"
#: common/setting/user.py:25
msgid "Display PDF labels in the browser, instead of downloading as a file"
-msgstr ""
+msgstr "PDF etiketleri bir dosya olarak indirmek yerine tarayıcıda görüntüle"
#: common/setting/user.py:31
msgid "Default label printer"
-msgstr ""
+msgstr "Varsayılan etiket yazıcı"
#: common/setting/user.py:32
msgid "Configure which label printer should be selected by default"
-msgstr ""
+msgstr "Hangi etiket yazıcının varsayılan olarak seçilmesi gerektiğini yapılandır"
#: common/setting/user.py:37
msgid "Inline report display"
-msgstr ""
+msgstr "Satır içi rapor görüntüleme"
#: common/setting/user.py:39
msgid "Display PDF reports in the browser, instead of downloading as a file"
-msgstr ""
+msgstr "PDF raporları bir dosya olarak indirmek yerine tarayıcıda görüntüle"
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "Form Alanlarında Barkod Tarayıcı"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "Form alanlarında barkod tarayıcı girişine izin ver"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3608,7 +3616,7 @@ msgstr "Parça Ara"
#: common/setting/user.py:52
msgid "Display parts in search preview window"
-msgstr "Parçaları arama ön izleme penceresinde görüntüle"
+msgstr "Parçaları arama önizleme penceresinde görüntüle"
#: common/setting/user.py:57
msgid "Search Supplier Parts"
@@ -3616,7 +3624,7 @@ msgstr "Parça Tedarikçilerini Ara"
#: common/setting/user.py:58
msgid "Display supplier parts in search preview window"
-msgstr ""
+msgstr "Tedarikçi parçalarını arama önizleme penceresinde görüntüle"
#: common/setting/user.py:63
msgid "Search Manufacturer Parts"
@@ -3624,39 +3632,39 @@ msgstr "Parça Üreticilerini Ara"
#: common/setting/user.py:64
msgid "Display manufacturer parts in search preview window"
-msgstr ""
+msgstr "Üretici parçalarını arama önizleme penceresinde görüntüle"
#: common/setting/user.py:69
msgid "Hide Inactive Parts"
-msgstr "Aktif olmayan parçaları gizle"
+msgstr "Pasif Parçaları Gizle"
#: common/setting/user.py:70
msgid "Excluded inactive parts from search preview window"
-msgstr ""
+msgstr "Arama önizleme penceresinden hariç tutulan pasif parçalar"
#: common/setting/user.py:75
msgid "Search Categories"
-msgstr ""
+msgstr "Kategorileri Ara"
#: common/setting/user.py:76
msgid "Display part categories in search preview window"
-msgstr ""
+msgstr "Parça kategorilerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:81
msgid "Search Stock"
-msgstr ""
+msgstr "Stoku Ara"
#: common/setting/user.py:82
msgid "Display stock items in search preview window"
-msgstr ""
+msgstr "Stok kalemlerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:87
msgid "Hide Unavailable Stock Items"
-msgstr ""
+msgstr "Var Olmayan Stok Kalemlerini Gizle"
#: common/setting/user.py:89
msgid "Exclude stock items which are not available from the search preview window"
-msgstr ""
+msgstr "Var olmayan stok kalemlerini arama önizleme penceresinden hariç tut"
#: common/setting/user.py:95
msgid "Search Locations"
@@ -3664,7 +3672,7 @@ msgstr "Konum Ara"
#: common/setting/user.py:96
msgid "Display stock locations in search preview window"
-msgstr ""
+msgstr "Stok konumlarını arama önizleme penceresinde görüntüle"
#: common/setting/user.py:101
msgid "Search Companies"
@@ -3672,11 +3680,11 @@ msgstr "Şirketleri Ara"
#: common/setting/user.py:102
msgid "Display companies in search preview window"
-msgstr ""
+msgstr "Şirketleri arama önizleme penceresinde görüntüle"
#: common/setting/user.py:107
msgid "Search Build Orders"
-msgstr ""
+msgstr "Üretim Emirlerini Ara"
#: common/setting/user.py:108
msgid "Display build orders in search preview window"
@@ -3684,7 +3692,7 @@ msgstr "Üretim emirlerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:113
msgid "Search Purchase Orders"
-msgstr "Satınalma Emri Ara"
+msgstr "Satın Alma Siparişlerini Ara"
#: common/setting/user.py:114
msgid "Display purchase orders in search preview window"
@@ -3692,79 +3700,79 @@ msgstr "Satın alma siparişlerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:119
msgid "Exclude Inactive Purchase Orders"
-msgstr "Etkin Olmayan Satın Alma Siparişlerini Hariç Tut"
+msgstr "Pasif Satın Alma Siparişlerini Hariç Tut"
#: common/setting/user.py:120
msgid "Exclude inactive purchase orders from search preview window"
-msgstr ""
+msgstr "Pasif satın alma siparişlerini arama önizleme penceresinden hariç tut"
#: common/setting/user.py:125
msgid "Search Sales Orders"
-msgstr ""
+msgstr "Satış Siparişlerini Ara"
#: common/setting/user.py:126
msgid "Display sales orders in search preview window"
-msgstr ""
+msgstr "Satış siparişlerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:131
msgid "Exclude Inactive Sales Orders"
-msgstr ""
+msgstr "Pasif Satın Alma Siparişlerini Hariç Tut"
#: common/setting/user.py:132
msgid "Exclude inactive sales orders from search preview window"
-msgstr ""
+msgstr "Pasif satın alma siparişlerini arama önizleme penceresinden hariç tut"
#: common/setting/user.py:137
msgid "Search Sales Order Shipments"
-msgstr ""
+msgstr "Satış Siparişi Gönderilerini Ara"
#: common/setting/user.py:138
msgid "Display sales order shipments in search preview window"
-msgstr ""
+msgstr "Satış siparişi gönderilerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:143
msgid "Search Return Orders"
-msgstr ""
+msgstr "İade Siparişlerini Ara"
#: common/setting/user.py:144
msgid "Display return orders in search preview window"
-msgstr ""
+msgstr "İade siparişlerini arama önizleme penceresinde görüntüle"
#: common/setting/user.py:149
msgid "Exclude Inactive Return Orders"
-msgstr ""
+msgstr "Pasif İade Siparişlerini Hariç Tut"
#: common/setting/user.py:150
msgid "Exclude inactive return orders from search preview window"
-msgstr ""
+msgstr "Pasif iade siparişlerini arama önizleme penceresinden hariç tut"
#: common/setting/user.py:155
msgid "Search Preview Results"
-msgstr ""
+msgstr "Arama Önizleme Sonuçları"
#: common/setting/user.py:157
msgid "Number of results to show in each section of the search preview window"
-msgstr ""
+msgstr "Arama önizleme penceresinin her bir bölümünde gösterilecek sonuç sayısı"
#: common/setting/user.py:163
msgid "Regex Search"
-msgstr ""
+msgstr "Regex Arama"
#: common/setting/user.py:164
msgid "Enable regular expressions in search queries"
-msgstr ""
+msgstr "Arama sorgularında düzenli ifadeleri etkinleştir"
#: common/setting/user.py:169
msgid "Whole Word Search"
-msgstr ""
+msgstr "Tam Kelime Arama"
#: common/setting/user.py:170
msgid "Search queries return results for whole word matches"
-msgstr ""
+msgstr "Arama sorguları, tam kelime eşleşmeleri için sonuçlar döndürür"
#: common/setting/user.py:175
msgid "Search Notes"
-msgstr ""
+msgstr "Notları Ara"
#: common/setting/user.py:177
msgid "Search queries return results for matches from the item's notes"
@@ -3772,11 +3780,11 @@ msgstr "Arama sorguları, nesnenin notlarındaki eşleşmelere ilişkin sonuçla
#: common/setting/user.py:183
msgid "Escape Key Closes Forms"
-msgstr ""
+msgstr "Esc Tuşu Formları Kapatır"
#: common/setting/user.py:184
msgid "Use the escape key to close modal forms"
-msgstr ""
+msgstr "Açılır formları kapatmak için ESC tuşunu kullanın"
#: common/setting/user.py:189
msgid "Fixed Navbar"
@@ -3784,31 +3792,31 @@ msgstr "Navigasyon Çubuğunu Sabitle"
#: common/setting/user.py:190
msgid "The navbar position is fixed to the top of the screen"
-msgstr ""
+msgstr "Gezinti çubuğu konumu ekranın üstüne sabitlenir"
#: common/setting/user.py:195
msgid "Fixed Table Headers"
-msgstr ""
+msgstr "Sabit Tablo Başlıkları"
#: common/setting/user.py:196
msgid "Table headers are fixed to the top of the table"
-msgstr ""
+msgstr "Tablo başlıkları tablonun üstüne sabitlenir"
#: common/setting/user.py:201
msgid "Show Spotlight"
-msgstr ""
+msgstr "Hızlı Aramayı Göster"
#: common/setting/user.py:202
msgid "Enable spotlight navigation functionality"
-msgstr ""
+msgstr "Hızlı arama gezinti işlevselliğini etkinleştir"
#: common/setting/user.py:207
msgid "Navigation Icons"
-msgstr ""
+msgstr "Gezinti Simgeleri"
#: common/setting/user.py:208
msgid "Display icons in the navigation bar"
-msgstr ""
+msgstr "Gezinti çubuğunda simgeleri göster"
#: common/setting/user.py:213
msgid "Date Format"
@@ -3816,126 +3824,126 @@ msgstr "Tarih Biçimi"
#: common/setting/user.py:214
msgid "Preferred format for displaying dates"
-msgstr ""
+msgstr "Tarihleri görüntülemek için tercih edilen biçim"
#: common/setting/user.py:227
msgid "Show Stock History"
-msgstr ""
+msgstr "Stok Geçmişini Göster"
#: common/setting/user.py:228
msgid "Display stock history information in the part detail page"
-msgstr ""
+msgstr "Parça ayrıntısı sayfasında stok geçmişi bilgisini görüntüle"
#: common/setting/user.py:233
msgid "Show Last Breadcrumb"
-msgstr ""
+msgstr "Son Gezinti Yolunu Göster"
#: common/setting/user.py:234
msgid "Show the current page in breadcrumbs"
-msgstr ""
+msgstr "Şimdiki sayfayı gezinti yollarında göster"
#: common/setting/user.py:239
msgid "Show full stock location in tables"
-msgstr ""
+msgstr "Tablolarda tam stok konumunu göster"
#: common/setting/user.py:241
msgid "Disabled: The full location path is displayed as a hover tooltip. Enabled: The full location path is displayed as plain text."
-msgstr ""
+msgstr "Devre dışı: Tam konumun yolu fareyle üzerine gelindiğinde bir araç ipucu olarak görüntülenir. Etkin: Tam konumun yolu düz metin olarak görüntülenir."
#: common/setting/user.py:247
msgid "Show full part categories in tables"
-msgstr ""
+msgstr "Tablolarda tam parça kategorilerini göster"
#: common/setting/user.py:249
msgid "Disabled: The full category path is displayed as a hover tooltip. Enabled: The full category path is displayed as plain text."
-msgstr ""
+msgstr "Devre dışı: Tam kategori yolu fareyle üzerine gelindiğinde bir araç ipucu olarak görüntülenir. Etkin: Tam kategori yolu düz metin olarak görüntülenir."
#: common/setting/user.py:255
msgid "Receive error reports"
-msgstr ""
+msgstr "Hata raporları alın"
#: common/setting/user.py:256
msgid "Receive notifications for system errors"
-msgstr ""
+msgstr "Sistem hataları için bildirim alın"
#: common/setting/user.py:261
msgid "Last used printing machines"
-msgstr ""
+msgstr "Son kullanılan yazdırma makineleri"
#: common/setting/user.py:262
msgid "Save the last used printing machines for a user"
-msgstr ""
+msgstr "Son kullanılan yazdırma makinelerini bir kullanıcı için kaydet"
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "Tüm modeller"
#: common/validators.py:63
msgid "No attachment model type provided"
-msgstr ""
+msgstr "Ekli model türü sağlanamadı"
#: common/validators.py:69
msgid "Invalid attachment model type"
-msgstr ""
+msgstr "Geçersiz ek modeli türü"
#: common/validators.py:110
msgid "Minimum places cannot be greater than maximum places"
-msgstr ""
+msgstr "Minimum yer sayısı maksimum yer sayısından fazla olamaz"
#: common/validators.py:122
msgid "Maximum places cannot be less than minimum places"
-msgstr ""
+msgstr "Maksimum yer sayısı minimum yer sayısından az olamaz"
#: common/validators.py:133
msgid "An empty domain is not allowed."
-msgstr ""
+msgstr "Boş bir alan adına izin verilmez."
#: common/validators.py:135
#, python-brace-format
msgid "Invalid domain name: {domain}"
-msgstr ""
+msgstr "Geçersiz alan adı: {domain}"
#: common/validators.py:151
msgid "Value must be uppercase"
-msgstr ""
+msgstr "Değer büyük harf olmalıdır"
#: common/validators.py:157
msgid "Value must be a valid variable identifier"
-msgstr ""
+msgstr "Değer geçerli bir değişken tanımlayıcısı olmalıdır"
#: company/api.py:141
msgid "Part is Active"
-msgstr ""
+msgstr "Parça Aktif"
#: company/api.py:145
msgid "Manufacturer is Active"
-msgstr ""
+msgstr "Üretici Aktif"
+
+#: company/api.py:242
+msgid "Supplier Part is Active"
+msgstr "Tedarikçi Parçası Aktif"
#: company/api.py:246
-msgid "Supplier Part is Active"
-msgstr ""
-
-#: company/api.py:250
msgid "Internal Part is Active"
-msgstr ""
+msgstr "Dahili Parça Aktif"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
-msgstr ""
+msgstr "Tedarikçi Aktif"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Üretici"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Şirket"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
-msgstr ""
+msgstr "Stoku Var"
#: company/models.py:123
msgid "Companies"
@@ -3943,11 +3951,11 @@ msgstr "Şirketler"
#: company/models.py:151
msgid "Company description"
-msgstr ""
+msgstr "Şirket açıklaması"
#: company/models.py:152
msgid "Description of the company"
-msgstr ""
+msgstr "Şirketin açıklaması"
#: company/models.py:158
msgid "Website"
@@ -3955,7 +3963,7 @@ msgstr "İnternet Sitesi"
#: company/models.py:159
msgid "Company website URL"
-msgstr "Şirket web sitesi"
+msgstr "Şirketin web sitesi"
#: company/models.py:165
msgid "Phone number"
@@ -3969,22 +3977,22 @@ msgstr "İletişim telefon numarası"
msgid "Contact email address"
msgstr "İletişim e-posta adresi"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "İletişim"
#: company/models.py:181
msgid "Point of contact"
-msgstr ""
+msgstr "İlgili kişi"
#: company/models.py:187
msgid "Link to external company information"
-msgstr ""
+msgstr "Harici şirket bilgisine bağlantı"
#: company/models.py:192
msgid "Is this company active?"
-msgstr ""
+msgstr "Bu şirket aktif mi?"
#: company/models.py:197
msgid "Is customer"
@@ -3996,7 +4004,7 @@ msgstr "Bu şirkete ürün satıyor musunuz?"
#: company/models.py:203
msgid "Is supplier"
-msgstr ""
+msgstr "Tedarikçi mi"
#: company/models.py:204
msgid "Do you purchase items from this company?"
@@ -4004,11 +4012,11 @@ msgstr "Bu şirketten ürün satın alıyor musunuz?"
#: company/models.py:209
msgid "Is manufacturer"
-msgstr ""
+msgstr "Üretici mi"
#: company/models.py:210
msgid "Does this company manufacture parts?"
-msgstr "Bu şirket üretim yapıyor mu?"
+msgstr "Bu şirket parça üretiyor mu?"
#: company/models.py:218
msgid "Default currency used for this company"
@@ -4016,299 +4024,291 @@ msgstr "Bu şirket için varsayılan para birimi"
#: company/models.py:225
msgid "Tax ID"
-msgstr ""
+msgstr "Vergi Numarası"
#: company/models.py:226
msgid "Company Tax ID"
-msgstr ""
+msgstr "Şirket Vergi Numarası"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Adres"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Adres"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Şirket Seç"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Adres Adı"
-#: company/models.py:400
-msgid "Title describing the address entry"
-msgstr ""
-
#: company/models.py:406
+msgid "Title describing the address entry"
+msgstr "Adres girdisini açıklayan başlık"
+
+#: company/models.py:412
msgid "Primary address"
msgstr "Birincil Adres"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Birincil adres olarak ayarla"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "1. Satır"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "1. Adres Satırı"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "2. Satır"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "2. Adres Satırı"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Posta Kodu"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Şehir/Bölge"
-#: company/models.py:434
-msgid "Postal code city/region"
-msgstr ""
-
#: company/models.py:440
-msgid "State/Province"
-msgstr ""
+msgid "Postal code city/region"
+msgstr "Posta kodu şehir/bölge"
-#: company/models.py:441
-msgid "State or province"
-msgstr ""
+#: company/models.py:446
+msgid "State/Province"
+msgstr "Eyalet/İlçe"
#: company/models.py:447
-msgid "Country"
-msgstr ""
+msgid "State or province"
+msgstr "Eyalet veya ilçe"
-#: company/models.py:448
-msgid "Address country"
-msgstr ""
+#: company/models.py:453
+msgid "Country"
+msgstr "Ülke"
#: company/models.py:454
-msgid "Courier shipping notes"
-msgstr ""
+msgid "Address country"
+msgstr "Adres ülkesi"
-#: company/models.py:455
-msgid "Notes for shipping courier"
-msgstr ""
+#: company/models.py:460
+msgid "Courier shipping notes"
+msgstr "Sevkiyat taşıyıcısı için notlar"
#: company/models.py:461
+msgid "Notes for shipping courier"
+msgstr "Sevkiyat taşıyıcısı için notlar"
+
+#: company/models.py:467
msgid "Internal shipping notes"
-msgstr ""
+msgstr "Dahili sevkiyet notları"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
-msgstr ""
+msgstr "Dahili kullanım için sevkiyat notları"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
-msgstr ""
+msgstr "Adres bilgisine bağlantı (harici)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
-msgstr ""
+msgstr "Üretici Parçası"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Temel Parça"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Parça seçin"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Üretici seçin"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "ÜPN"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Üretici Parça Numarası"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
-msgstr ""
+msgstr "Harici üretici bağlantısı için URL"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Parça üreticisi açıklaması"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
-msgstr ""
+msgstr "Paket birimleri, temel parça birimleriyle uyumlu olmalıdır"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
-msgstr ""
+msgstr "Paket birimleri sıfırdan büyük olmalıdır"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
-msgstr ""
+msgstr "Bağlantılı üretici parçası aynı temel parçayı referans almalıdır"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Tedarikçi"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Tedarikçi seçin"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
-msgstr ""
+msgstr "Tedarikçi stok kodu"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
-msgstr "Bu parça üreticisi aktif mi?"
+msgstr "Bu tedarikçi parçası aktif mi?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Parça üreticisi seç"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
-msgstr ""
+msgstr "Harici tedarikçi parçası bağlantısı için URL"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
-msgstr ""
+msgstr "Tedarikçi parçası açıklaması"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "temel maliyet"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
-msgstr ""
+msgstr "Minimum ücret (örneğin stoklama ücreti)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Paketleme"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
-msgstr ""
+msgstr "Parça paketleme"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
-msgstr ""
+msgstr "Paket Miktarı"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
-msgstr ""
+msgstr "Tek bir pakette tedarik edilen toplam miktar. Tekli ürünler için boş bırakın."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "çoklu"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
-msgstr ""
+msgstr "Birden fazla sipariş ver"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
-msgstr ""
+msgstr "Tedarikçiden temin edilebilir miktar"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
-msgstr ""
+msgstr "Temin Edilebilir Miktar Güncellendi"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
-msgstr ""
+msgstr "Temin edilebilirlik verisinin güncellendiği son tarih"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
-msgstr ""
+msgstr "Tedarikçi Fiyat Kademesi"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
-msgstr ""
+msgstr "Bu tedarikçi için kullanılan varsayılan para birimi"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
-msgstr ""
+msgstr "Şirket Adı"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
-msgstr ""
+msgstr "Stokta"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
-msgstr ""
+msgstr "Fiyat Kademeleri"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
-msgstr ""
+msgstr "Veri dışa aktarma sırasında hata oluştu"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
-msgstr ""
+msgstr "Veri dışa aktarma eklentisi yanlış veri biçimi döndürdü"
#: data_exporter/serializers.py:73
msgid "Export Format"
-msgstr ""
+msgstr "Dışa Aktarma Biçimi"
#: data_exporter/serializers.py:74
msgid "Select export file format"
-msgstr ""
+msgstr "Çıktı dosyası biçimi seçin"
#: data_exporter/serializers.py:81
msgid "Export Plugin"
-msgstr ""
+msgstr "Dışa Aktarma Eklentisi"
#: data_exporter/serializers.py:82
msgid "Select export plugin"
-msgstr ""
+msgstr "Dışa aktarma eklentisi seçin"
#: generic/states/fields.py:146
msgid "Additional status information for this item"
-msgstr ""
+msgstr "Bu kalem için ek durum bilgisi"
#: generic/states/fields.py:160
msgid "Custom status key"
-msgstr ""
+msgstr "Özel durum anahtarı"
#: generic/states/serializers.py:26
msgid "Custom"
-msgstr ""
+msgstr "Özel"
#: generic/states/serializers.py:37
msgid "Class"
-msgstr ""
+msgstr "Sınıf"
#: generic/states/serializers.py:40
msgid "Values"
-msgstr ""
+msgstr "Değerler"
#: generic/states/tests.py:22 order/status_codes.py:13
msgid "Placed"
@@ -4316,7 +4316,7 @@ msgstr "Sipariş verildi"
#: generic/states/validators.py:21
msgid "Invalid status code"
-msgstr ""
+msgstr "Geçersiz durum kodu"
#: importer/models.py:73
msgid "Data File"
@@ -4324,239 +4324,239 @@ msgstr "Veri Dosyası"
#: importer/models.py:74
msgid "Data file to import"
-msgstr ""
+msgstr "İçe aktarılacak veri dosyası"
#: importer/models.py:83
msgid "Columns"
-msgstr ""
+msgstr "Sütunlar"
#: importer/models.py:90
msgid "Target model type for this import session"
-msgstr ""
+msgstr "Bu içe aktarma oturumu için hedef model türü"
#: importer/models.py:96
msgid "Import status"
-msgstr ""
+msgstr "İçe aktarma durumu"
#: importer/models.py:106
msgid "Field Defaults"
-msgstr ""
+msgstr "Alan Varsayılanları"
#: importer/models.py:113
msgid "Field Overrides"
-msgstr ""
+msgstr "Alan Geçersiz Kılmaları"
#: importer/models.py:120
msgid "Field Filters"
-msgstr ""
+msgstr "Alan Filtreleri"
#: importer/models.py:126
msgid "Update Existing Records"
-msgstr ""
+msgstr "Mevcut Kayıtları Güncelle"
#: importer/models.py:127
msgid "If enabled, existing records will be updated with new data"
-msgstr ""
+msgstr "Etkinleştirilirse, mevcut kayıtlar yeni veri ile güncellenecektir"
#: importer/models.py:259
msgid "Some required fields have not been mapped"
-msgstr ""
+msgstr "Bazı zorunlu alanlar eşleştirilmemiştir"
#: importer/models.py:366
msgid "ID"
-msgstr ""
+msgstr "ID"
#: importer/models.py:367
msgid "Existing database identifier for the record"
-msgstr ""
+msgstr "Kayıt için mevcut veritabanı tanımlayıcısı"
#: importer/models.py:430
msgid "Column is already mapped to a database field"
-msgstr ""
+msgstr "Sütun zaten bir veritabanı alanına eşlenmiştir"
#: importer/models.py:435
msgid "Field is already mapped to a data column"
-msgstr ""
+msgstr "Alan zaten bir veri sütununa eşlenmiştir"
#: importer/models.py:444
msgid "Column mapping must be linked to a valid import session"
-msgstr ""
+msgstr "Sütun eşlemesi geçerli bir içe aktarma oturumuna bağlanmalıdır"
#: importer/models.py:449
msgid "Column does not exist in the data file"
-msgstr ""
+msgstr "Sütun veri dosyasında bulunmuyor"
#: importer/models.py:456
msgid "Field does not exist in the target model"
-msgstr ""
+msgstr "Alan hedef modelde bulunmuyor"
#: importer/models.py:460
msgid "Selected field is read-only"
-msgstr ""
+msgstr "Seçilen alan salt okunurdur"
#: importer/models.py:465 importer/models.py:536
msgid "Import Session"
-msgstr ""
+msgstr "Oturumu İçe Aktar"
#: importer/models.py:469
msgid "Field"
-msgstr ""
+msgstr "Alan"
#: importer/models.py:471
msgid "Column"
-msgstr ""
+msgstr "Sütun"
#: importer/models.py:540
msgid "Row Index"
-msgstr ""
+msgstr "Satır İndeksi"
#: importer/models.py:543
msgid "Original row data"
-msgstr ""
+msgstr "Orijinal satır verisi"
#: importer/models.py:548 machine/models.py:111
msgid "Errors"
-msgstr ""
+msgstr "Hatalar"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
-msgstr ""
+msgstr "Geçerli"
#: importer/models.py:720
msgid "ID is required for updating existing records."
-msgstr ""
+msgstr "Mevcut kayıtları güncellemek için ID gereklidir."
#: importer/models.py:727
msgid "No record found with the provided ID"
-msgstr ""
+msgstr "Sağlanan ID ile kayıt bulunamadı"
#: importer/models.py:733
msgid "Invalid ID format provided"
-msgstr ""
+msgstr "Sağlanan ID biçimi geçersiz"
#: importer/operations.py:31 importer/operations.py:52
msgid "Unsupported data file format"
-msgstr ""
+msgstr "Desteklenmeyen veri dosyası biçimi"
#: importer/operations.py:43
msgid "Failed to open data file"
-msgstr ""
+msgstr "Veri dosyasını açılamadı"
#: importer/operations.py:54
msgid "Invalid data file dimensions"
-msgstr ""
+msgstr "Geçersiz veri dosyası boyutları"
#: importer/serializers.py:92
msgid "Invalid field defaults"
-msgstr ""
+msgstr "Geçersiz alan varsayılanları"
#: importer/serializers.py:105
msgid "Invalid field overrides"
-msgstr ""
+msgstr "Geçersiz alan geçersiz kılmaları"
#: importer/serializers.py:118
msgid "Invalid field filters"
-msgstr ""
+msgstr "Geçersiz alan filtreleri"
#: importer/serializers.py:177
msgid "Rows"
-msgstr ""
+msgstr "Satırlar"
#: importer/serializers.py:178
msgid "List of row IDs to accept"
-msgstr ""
+msgstr "Kabul edilecek satır ID'leri"
#: importer/serializers.py:191
msgid "No rows provided"
-msgstr ""
+msgstr "Hiç satır sağlanmadı"
#: importer/serializers.py:195
msgid "Row does not belong to this session"
-msgstr ""
+msgstr "Satır bu oturuma ait değil"
#: importer/serializers.py:198
msgid "Row contains invalid data"
-msgstr ""
+msgstr "Satır geçersiz veri içeriyor"
#: importer/serializers.py:201
msgid "Row has already been completed"
-msgstr ""
+msgstr "Satır zaten tamamlandı"
#: importer/status_codes.py:13
msgid "Initializing"
-msgstr ""
+msgstr "Başlatılıyor"
#: importer/status_codes.py:18
msgid "Mapping Columns"
-msgstr ""
+msgstr "Sütunları Eşleme"
#: importer/status_codes.py:21
msgid "Importing Data"
-msgstr ""
+msgstr "Veri İçe Aktarılıyor"
#: importer/status_codes.py:24
msgid "Processing Data"
-msgstr ""
+msgstr "Veri İşleniyor"
#: importer/validators.py:21
msgid "Data file exceeds maximum size limit"
-msgstr ""
+msgstr "Veri dosyası maksimum boyut sınırını aşıyor"
#: importer/validators.py:26
msgid "Data file contains no headers"
-msgstr ""
+msgstr "Veri dosyası başlık içermiyor"
#: importer/validators.py:29
msgid "Data file contains too many columns"
-msgstr ""
+msgstr "Veri dosyası çok fazla sütun içeriyor"
#: importer/validators.py:32
msgid "Data file contains too many rows"
-msgstr ""
+msgstr "Veri dosyası çok fazla satır içeriyor"
#: importer/validators.py:53
msgid "Value must be a valid dictionary object"
-msgstr ""
+msgstr "Değer geçerli bir sözlük nesnesi olmalıdır"
#: machine/machine_types/label_printer.py:212
msgid "Copies"
-msgstr ""
+msgstr "Kopyalar"
#: machine/machine_types/label_printer.py:213
msgid "Number of copies to print for each label"
-msgstr ""
+msgstr "Her etiket için yazdırılacak kopya sayısı"
#: machine/machine_types/label_printer.py:231
msgid "Connected"
-msgstr ""
+msgstr "Bağlı"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
-msgstr ""
+msgstr "Bilinmeyen"
#: machine/machine_types/label_printer.py:233
msgid "Printing"
-msgstr ""
+msgstr "Yazdırılıyor"
#: machine/machine_types/label_printer.py:234
msgid "Warning"
-msgstr ""
+msgstr "Uyarı"
#: machine/machine_types/label_printer.py:235
msgid "No media"
-msgstr ""
+msgstr "Ortam yok"
#: machine/machine_types/label_printer.py:236
msgid "Paper jam"
-msgstr ""
+msgstr "Kağıt sıkışması"
#: machine/machine_types/label_printer.py:237
msgid "Disconnected"
-msgstr ""
+msgstr "Bağlı değil"
#: machine/machine_types/label_printer.py:238
msgid "Error"
-msgstr ""
+msgstr "Hata"
#: machine/machine_types/label_printer.py:245
msgid "Label Printer"
@@ -4564,75 +4564,75 @@ msgstr "Etiket Yazdırma"
#: machine/machine_types/label_printer.py:246
msgid "Directly print labels for various items."
-msgstr ""
+msgstr "Çeşitli ürünler için etiketleri doğrudan yazdırın."
#: machine/machine_types/label_printer.py:252
msgid "Printer Location"
-msgstr ""
+msgstr "Yazıcı Konumu"
#: machine/machine_types/label_printer.py:253
msgid "Scope the printer to a specific location"
-msgstr ""
+msgstr "Yazıcıyı belirli bir konuma ayarlayın"
#: machine/models.py:26
msgid "Name of machine"
-msgstr ""
+msgstr "Makinenin adı"
#: machine/models.py:30
msgid "Machine Type"
-msgstr ""
+msgstr "Makine Türü"
#: machine/models.py:30
msgid "Type of machine"
-msgstr ""
+msgstr "Makinenin türü"
#: machine/models.py:35 machine/models.py:147
msgid "Driver"
-msgstr ""
+msgstr "Sürücü"
#: machine/models.py:36
msgid "Driver used for the machine"
-msgstr ""
+msgstr "Makine için kullanılan sürücü"
#: machine/models.py:40
msgid "Machines can be disabled"
-msgstr ""
+msgstr "Makineler devre dışı bırakılabilir"
#: machine/models.py:96
msgid "Driver available"
-msgstr ""
+msgstr "Sürücü mevcut"
#: machine/models.py:101
msgid "No errors"
-msgstr ""
+msgstr "Hata yok"
#: machine/models.py:106
msgid "Initialized"
-msgstr ""
+msgstr "Başlatıldı"
#: machine/models.py:118
msgid "Machine status"
-msgstr ""
+msgstr "Makine durumu"
#: machine/models.py:146
msgid "Machine"
-msgstr ""
+msgstr "Makine"
#: machine/models.py:158
msgid "Machine Config"
-msgstr ""
+msgstr "Makine Yapılandırması"
#: machine/models.py:163
msgid "Config type"
-msgstr ""
+msgstr "Yapılandırma türü"
#: machine/serializers.py:24
msgid "Key of the property"
-msgstr ""
+msgstr "Özelliğin anahtarı"
#: machine/serializers.py:27
msgid "Value of the property"
-msgstr ""
+msgstr "Özelliğin değeri"
#: machine/serializers.py:30 users/models.py:238
msgid "Group"
@@ -4640,427 +4640,427 @@ msgstr "Grup"
#: machine/serializers.py:30
msgid "Grouping of the property"
-msgstr ""
+msgstr "Özelliğin gruplandırması"
#: machine/serializers.py:33
msgid "Type"
-msgstr ""
+msgstr "Tür"
#: machine/serializers.py:35
msgid "Type of the property"
-msgstr ""
+msgstr "Özelliğin türü"
#: machine/serializers.py:40
msgid "Max Progress"
-msgstr ""
+msgstr "Maksimum İlerleme"
#: machine/serializers.py:41
msgid "Maximum value for progress type, required if type=progress"
-msgstr ""
+msgstr "İlerleme türünün maksimum değeri, tür=ilerleme ise gerekli"
#: order/api.py:130
msgid "Order Reference"
-msgstr ""
+msgstr "Sipariş Referansı"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
-msgstr ""
+msgstr "Açık"
#: order/api.py:174
msgid "Has Project Code"
-msgstr ""
+msgstr "Proje Kodu Var"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Oluşturan"
#: order/api.py:192
msgid "Created Before"
-msgstr ""
+msgstr "Öncesinde Oluşturuldu"
#: order/api.py:196
msgid "Created After"
-msgstr ""
+msgstr "Sonrasında Oluşturuldu"
#: order/api.py:200
msgid "Has Start Date"
-msgstr ""
+msgstr "Başlangıç Tarihi Var"
#: order/api.py:208
msgid "Start Date Before"
-msgstr ""
+msgstr "Öncesi Başlangıç Tarihi"
#: order/api.py:212
msgid "Start Date After"
-msgstr ""
+msgstr "Sonrası Başlangıç Tarihi"
#: order/api.py:216
msgid "Has Target Date"
-msgstr ""
+msgstr "Hedef Tarihi Var"
#: order/api.py:224
msgid "Target Date Before"
-msgstr ""
+msgstr "Öncesi Hedef Tarih"
#: order/api.py:228
msgid "Target Date After"
-msgstr ""
+msgstr "Sonrası Hedef Tarih"
#: order/api.py:279
msgid "Has Pricing"
-msgstr ""
+msgstr "Fiyatlandırılmış"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
-msgstr ""
+msgstr "Öncesinde Tamamlandı"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
-msgstr ""
+msgstr "Sonrasında Tamamlandı"
#: order/api.py:342 order/api.py:346
msgid "External Build Order"
-msgstr ""
+msgstr "Harici Üretim Emri"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
-msgstr ""
+msgstr "Sipariş"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
-msgstr ""
+msgstr "Sipariş Tamamlandı"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
-msgstr ""
+msgstr "Dahili Parça"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
-msgstr ""
+msgstr "Sipariş Bekliyor"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Tamamlandı"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
-msgstr ""
+msgstr "Sevkiyatı Var"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
-msgstr ""
+msgstr "Satın Alma Siparişi"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
#: report/templates/report/inventree_sales_order_shipment_report.html:15
#: templates/email/overdue_sales_order.html:15
msgid "Sales Order"
-msgstr "Sipariş Emri"
+msgstr "Satış Siparişi"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
msgid "Return Order"
-msgstr ""
+msgstr "İade Siparişi"
#: order/models.py:90
#: report/templates/report/inventree_purchase_order_report.html:38
#: report/templates/report/inventree_sales_order_report.html:31
msgid "Total Price"
-msgstr ""
+msgstr "Toplam Fiyat"
#: order/models.py:91
msgid "Total price for this order"
-msgstr ""
+msgstr "Bu sipariş için toplam fiyat"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
-msgstr ""
+msgstr "Sipariş Para Birimi"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
-msgstr ""
+msgstr "Bu sipariş için para birimi (şirket varsayılanını kullanmak için boş bırakın)"
#: order/models.py:325
msgid "This order is locked and cannot be modified"
-msgstr ""
+msgstr "Bu sipariş kilitli olduğundan değiştirilemez"
#: order/models.py:377
msgid "Contact does not match selected company"
-msgstr ""
+msgstr "İletişim bilgileri seçilen şirketle eşleşmiyor"
#: order/models.py:384
msgid "Start date must be before target date"
-msgstr ""
+msgstr "Başlangıç tarihi hedef tarihinden önce olmalıdır"
#: order/models.py:391
msgid "Address does not match selected company"
-msgstr ""
+msgstr "Adres bilgileri seçilen şirketle eşleşmiyor"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
-msgstr ""
+msgstr "Açıklama (isteğe bağlı)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
-msgstr ""
+msgstr "Bu sipariş için proje kodu seçin"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Harici sayfaya bağlantı"
-#: order/models.py:466
-msgid "Start date"
-msgstr ""
-
#: order/models.py:467
-msgid "Scheduled start date for this order"
-msgstr ""
+msgid "Start date"
+msgstr "Başlangıç tarihi"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:468
+msgid "Scheduled start date for this order"
+msgstr "Bu üretim emri için planlanan başlangıç tarihi"
+
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Hedeflenen tarih"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
-msgstr ""
-
-#: order/models.py:495
-msgid "Issue Date"
-msgstr ""
+msgstr "Sipariş teslimatı için beklenen tarih. Bu tarihten sonra sipariş gecikmeli olacaktır."
#: order/models.py:496
+msgid "Issue Date"
+msgstr "Düzenleme Tarihi"
+
+#: order/models.py:497
msgid "Date order was issued"
-msgstr ""
+msgstr "Siparişin düzenlendiği tarih"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
-msgstr ""
+msgstr "Bu siparişten sorumlu kullanıcı veya grup"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
-msgstr ""
+msgstr "Bu sipariş için ilgili kişi"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
-msgstr ""
+msgstr "Bu sipariş için şirket adresi"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Sipariş referansı"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Durum"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
-msgstr ""
+msgstr "Satın alma siparişi durumu"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
-msgstr ""
-
-#: order/models.py:652
-msgid "Supplier Reference"
-msgstr ""
+msgstr "Ürünlerin sipariş edilmekte olduğu şirket"
#: order/models.py:653
+msgid "Supplier Reference"
+msgstr "Tedarikçi Referansı"
+
+#: order/models.py:654
msgid "Supplier order reference code"
-msgstr ""
+msgstr "Tedarikçi siparişi referans kodu"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
-msgstr ""
+msgstr "teslim alan"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
-msgstr ""
+msgstr "Siparişin tamamlandığı tarih"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Hedef"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
-msgstr ""
+msgstr "Teslim alınan kalemler için varış yeri"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
-msgstr ""
+msgstr "Parça tedarikçisi PO tedarikçisi ile eşleşmelidir"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
-msgstr ""
+msgstr "Satır, satın alma siparişi ile eşleşmiyor"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
-msgstr ""
+msgstr "Satırda bağlantılı bir parça eksik"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
-msgstr ""
+msgstr "Miktar pozitif bir sayı olmalıdır"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Müşteri"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
-msgstr ""
+msgstr "Ürünlerin satılmakta olduğu şirket"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
-msgstr ""
+msgstr "Satış siparişi durumu"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
-msgstr ""
+msgstr "Müşteri Referansı "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
-msgstr ""
+msgstr "Müşteri siparişi referans kodu"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
-msgstr ""
+msgstr "Sevkiyat Tarihi"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
-msgstr ""
+msgstr "tarafından sevk edildi"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
-msgstr ""
+msgstr "Sipariş zaten tamamlandı"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
-msgstr ""
+msgstr "Sipariş zaten iptal edildi"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
-msgstr ""
+msgstr "Yalnızca açık siparişler tamamlandı olarak işaretlenebilir"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
-msgstr ""
+msgstr "Tamamlanmamış sevkiyatlar olduğundan sipariş tamamlanamaz"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
-msgstr ""
+msgstr "Tamamlanmamış tahsisatlar olduğundan sipariş tamamlanamaz"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
-msgstr ""
+msgstr "Tamamlanmamış satırlar olduğundan sipariş tamamlanamaz"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
-msgstr ""
+msgstr "Bu sipariş kilitli olduğundan değiştirilemez"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
-msgstr ""
+msgstr "Kalem miktarı"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
-msgstr ""
+msgstr "Satır referansı"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
-msgstr ""
+msgstr "Satır notları"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
-msgstr ""
+msgstr "Bu satır için hedef tarih (siparişin hedef tarihini kullanmak için boş bırakın)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
-msgstr ""
+msgstr "Satır açıklaması (isteğe bağlı)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
-msgstr ""
+msgstr "Bu satır için ek bağlam"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
-msgstr ""
+msgstr "Birim Fiyat"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
-msgstr ""
+msgstr "Satın Alma Siparişi Kalemi"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
-msgstr ""
+msgstr "Tedarikçi parçası tedarikçi ile eşleşmelidir"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
-msgstr ""
+msgstr "Üretim emri harici olarak işaretlenmelidir"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
-msgstr ""
+msgstr "Üretim emirleri yalnızca montaj parçalarına bağlanabilir"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
-msgstr ""
+msgstr "Üretim emri parçası satır parçası ile eşleşmelidir"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
-msgstr ""
-
-#: order/models.py:1950
-msgid "Received"
-msgstr ""
+msgstr "Tedarikçi parçası"
#: order/models.py:1951
+msgid "Received"
+msgstr "Teslim Alındı"
+
+#: order/models.py:1952
msgid "Number of items received"
-msgstr ""
+msgstr "Teslim alınan miktar"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
-msgstr ""
+msgstr "Alış Fiyatı"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
-msgstr ""
+msgstr "Birim alış fiyatı"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
-msgstr ""
+msgstr "Bu kalem tarafından karşılanacak harici Üretim Emri"
#: order/models.py:2039
msgid "Purchase Order Extra Line"
-msgstr ""
+msgstr "Ek Sipariş Kalemi"
#: order/models.py:2068
msgid "Sales Order Line Item"
-msgstr ""
+msgstr "Satış Siparişi Kalemi"
#: order/models.py:2093
msgid "Only salable parts can be assigned to a sales order"
-msgstr ""
+msgstr "Yalnızca satışa uygun parçalar bir satış siparişine atanabilir"
#: order/models.py:2119
msgid "Sale Price"
-msgstr ""
+msgstr "Satış Fiyatı"
#: order/models.py:2120
msgid "Unit sale price"
-msgstr ""
+msgstr "Birim satış fiyatı"
#: order/models.py:2129 order/status_codes.py:50
msgid "Shipped"
@@ -5068,129 +5068,133 @@ msgstr "Sevk edildi"
#: order/models.py:2130
msgid "Shipped quantity"
-msgstr ""
+msgstr "Sevk edilen miktar"
#: order/models.py:2241
msgid "Sales Order Shipment"
-msgstr ""
+msgstr "Satış Siparişi Sevkiyatı"
#: order/models.py:2254
msgid "Shipment address must match the customer"
-msgstr ""
+msgstr "Sevk adresi müşteri ile eşleşmelidir"
#: order/models.py:2290
msgid "Shipping address for this shipment"
-msgstr ""
+msgstr "Bu sevkiyatın sevk adresi"
#: order/models.py:2298
msgid "Date of shipment"
-msgstr ""
+msgstr "Sevkiyat tarihi"
#: order/models.py:2304
msgid "Delivery Date"
-msgstr ""
+msgstr "Teslimat Tarihi"
#: order/models.py:2305
msgid "Date of delivery of shipment"
-msgstr ""
+msgstr "Sevkiyatın teslimat tarihi"
#: order/models.py:2313
msgid "Checked By"
-msgstr ""
+msgstr "Kontrol Eden"
#: order/models.py:2314
msgid "User who checked this shipment"
-msgstr ""
+msgstr "Bu sevkiyatı kontrol eden kullanıcılar"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
-msgstr ""
+msgstr "Sevkiyat"
#: order/models.py:2322
msgid "Shipment number"
-msgstr ""
+msgstr "Sevkiyat numarası"
#: order/models.py:2330
msgid "Tracking Number"
-msgstr ""
+msgstr "Takip Numarası"
#: order/models.py:2331
msgid "Shipment tracking information"
-msgstr ""
+msgstr "Sevkiyat takip numarası"
#: order/models.py:2338
msgid "Invoice Number"
-msgstr ""
+msgstr "Fatura Numarası"
#: order/models.py:2339
msgid "Reference number for associated invoice"
-msgstr ""
+msgstr "Fatura referans numarası"
#: order/models.py:2378
msgid "Shipment has already been sent"
-msgstr ""
+msgstr "Sevkiyat zaten sevk edildi"
#: order/models.py:2381
msgid "Shipment has no allocated stock items"
-msgstr ""
+msgstr "Sevkiyatın tahsis edilen stok kalemleri bulunmuyor"
#: order/models.py:2388
msgid "Shipment must be checked before it can be completed"
-msgstr ""
+msgstr "Sevkiyat tamamlanmadan önce kontrol edilmelidir"
#: order/models.py:2467
msgid "Sales Order Extra Line"
-msgstr ""
+msgstr "Ek Sipariş Kalemi"
#: order/models.py:2496
msgid "Sales Order Allocation"
-msgstr ""
+msgstr "Satış Siparişi Tahsisatı"
#: order/models.py:2519 order/models.py:2521
msgid "Stock item has not been assigned"
-msgstr ""
+msgstr "Stok kalemi henüz atanmadı"
#: order/models.py:2528
msgid "Cannot allocate stock item to a line with a different part"
-msgstr ""
+msgstr "Farklı bir parçaya sahip satıra stok kalemi tahsis edilemez"
#: order/models.py:2531
msgid "Cannot allocate stock to a line without a part"
-msgstr ""
+msgstr "Parça içermeyen bir satıra stok tahsis edilemez"
#: order/models.py:2534
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Tahsis miktarı stok miktarını aşamaz"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
-msgstr "Seri numaralı stok kalemi için miktar bir olmalı"
+msgstr "Seri numaralı stok kalemi için miktar 1 olmalıdır"
#: order/models.py:2556
msgid "Sales order does not match shipment"
-msgstr ""
+msgstr "Satış siparişi sevkiyatla eşleşmiyor"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
-msgstr ""
+msgstr "Sevkiyat satış siparişiyle eşleşmiyor"
#: order/models.py:2565
msgid "Line"
-msgstr ""
+msgstr "Satır"
#: order/models.py:2576
msgid "Sales order shipment reference"
-msgstr ""
+msgstr "Satış siparişinin sevkiyat referansı"
#: order/models.py:2589 order/models.py:3008
msgid "Item"
-msgstr ""
+msgstr "Kalem"
#: order/models.py:2590
msgid "Select stock item to allocate"
-msgstr ""
+msgstr "Tahsis edilecek stok kalemini seçin"
#: order/models.py:2599
msgid "Enter stock allocation quantity"
@@ -5198,307 +5202,307 @@ msgstr "Stok tahsis miktarını girin"
#: order/models.py:2714
msgid "Return Order reference"
-msgstr ""
+msgstr "İade Siparişi referansı"
#: order/models.py:2726
msgid "Company from which items are being returned"
-msgstr ""
+msgstr "Ürünlerin iade edildiği şirket"
#: order/models.py:2739
msgid "Return order status"
-msgstr ""
+msgstr "İade siparişi durumu"
#: order/models.py:2966
msgid "Return Order Line Item"
-msgstr ""
+msgstr "İade Siparişi Satırı"
#: order/models.py:2979
msgid "Stock item must be specified"
-msgstr ""
+msgstr "Stok kalemi belirtilmelidir"
#: order/models.py:2983
msgid "Return quantity exceeds stock quantity"
-msgstr ""
+msgstr "İade miktarı stok miktarını aşıyor"
#: order/models.py:2988
msgid "Return quantity must be greater than zero"
-msgstr ""
+msgstr "İade miktarı sıfırdan büyük olmalıdır"
#: order/models.py:2993
msgid "Invalid quantity for serialized stock item"
-msgstr ""
+msgstr "Seri numaralı stok kalemi için geçersiz miktar"
#: order/models.py:3009
msgid "Select item to return from customer"
-msgstr ""
+msgstr "Müşteriden iade edilecek ürünü seçin"
#: order/models.py:3024
msgid "Received Date"
-msgstr ""
+msgstr "Teslim Alma Tarihi"
#: order/models.py:3025
msgid "The date this this return item was received"
-msgstr ""
+msgstr "Bu iade kaleminin teslim alındığı tarih"
#: order/models.py:3037
msgid "Outcome"
-msgstr ""
+msgstr "Sonuç"
#: order/models.py:3038
msgid "Outcome for this line item"
-msgstr ""
+msgstr "Bu satırın sonucu"
#: order/models.py:3045
msgid "Cost associated with return or repair for this line item"
-msgstr ""
+msgstr "Bu kalem için iade veya onarımla ilgili maliyet"
#: order/models.py:3055
msgid "Return Order Extra Line"
-msgstr ""
+msgstr "Ek Sipariş Kalemi"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
-msgstr ""
+msgstr "Sipariş ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
-msgstr ""
+msgstr "Kopyası oluşturulacak siparişin ID'si"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
-msgstr ""
+msgstr "Satırları Kopyala"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
-msgstr ""
+msgstr "Satırları orijinal siparişten kopyala"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
-msgstr ""
+msgstr "Ek Kalemleri Kopyala"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
-msgstr ""
+msgstr "Orijinal siparişten ek kalemleri kopyala"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
-msgstr "Satır Ögeleri"
+msgstr "Satırlar"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
-msgstr ""
+msgstr "Tamamlanan Satırlar"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
-msgstr ""
+msgstr "Siparişin Kopyasını Oluştur"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
-msgstr ""
+msgstr "Bu siparişin kopyasını oluşturmak için seçenekleri belirtin"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
-msgstr ""
+msgstr "Geçersiz sipariş ID"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
-msgstr ""
+msgstr "Tedarikçi Adı"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
-msgstr ""
+msgstr "Sipariş iptal edilemez"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
-msgstr ""
+msgstr "Satır eksiği olan siparişin kapatılmasına izin ver"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
-msgstr ""
+msgstr "Siparişin eksik satırları var"
+
+#: order/serializers.py:609
+msgid "Order is not open"
+msgstr "Sipariş açık değil"
+
+#: order/serializers.py:638
+msgid "Auto Pricing"
+msgstr "Otomatik Fiyatlandırma"
+
+#: order/serializers.py:640
+msgid "Automatically calculate purchase price based on supplier part data"
+msgstr "Tedarikçi parça verilerine göre satın alma fiyatını otomatik olarak hesapla"
+
+#: order/serializers.py:654
+msgid "Purchase price currency"
+msgstr "Satın alma fiyatı para birimi"
#: order/serializers.py:676
-msgid "Order is not open"
-msgstr ""
-
-#: order/serializers.py:703
-msgid "Auto Pricing"
-msgstr ""
-
-#: order/serializers.py:705
-msgid "Automatically calculate purchase price based on supplier part data"
-msgstr ""
-
-#: order/serializers.py:715
-msgid "Purchase price currency"
-msgstr ""
-
-#: order/serializers.py:729
msgid "Merge Items"
-msgstr ""
+msgstr "Kalemleri Birleştir"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
-msgstr ""
+msgstr "Aynı parça, hedef ve hedef tarihe sahip kalemleri tek bir satırda birleştir"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
-msgstr ""
+msgstr "SKU"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
-msgstr ""
+msgstr "Dahili Parça Numarası"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
-msgstr ""
+msgstr "Dahili Parça Adı"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
-msgstr ""
+msgstr "Tedarikçi parçası belirtilmeli"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
-msgstr ""
+msgstr "Satın alma siparişi belirtilmeli"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
-msgstr ""
+msgstr "Tedarikçi satın alma siparişi ile eşleşmelidir"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
-msgstr ""
+msgstr "Satın alma siparişi tedarikçi ile eşleşmelidir"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
-msgstr ""
+msgstr "Satır"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
-msgstr ""
+msgstr "Teslim alınan kalemler için varış konumunu seçin"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
-msgstr ""
+msgstr "Gelen stok kalemleri için parti numarası girin"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
-msgstr ""
+msgstr "Son Kullanma Tarihi"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
-msgstr ""
+msgstr "Gelen stok kalemleri için son kullanma tarihi girin"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
-msgstr ""
+msgstr "Gelen stok kalemlerinin seri numaralarını girin"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
-msgstr ""
+msgstr "Gelen stok kalemlerinin paketleme bilgilerini geçersiz kıl"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
-msgstr ""
+msgstr "Gelen stok kalemleri için ek not"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
-msgstr ""
+msgstr "Barkod"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
-msgstr ""
+msgstr "Taranan barkod"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
-msgstr ""
+msgstr "Barkod zaten kullanımda"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
-msgstr ""
+msgstr "Satırlar sağlanmalıdır"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
-msgstr ""
+msgstr "Hedef konum belirtilmelidir"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
-msgstr ""
+msgstr "Sağlanan barkod değerleri benzersiz olmalıdır"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
-msgstr ""
+msgstr "Sevkiyatlar"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
-msgstr ""
+msgstr "Tamamlanan Sevkiyatlar"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
-msgstr ""
+msgstr "Satış para birimi"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
-msgstr ""
+msgstr "Tahsis Edilen Kalemler"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
-msgstr ""
+msgstr "Sevkiyat bilgileri sağlanmadı"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
-msgstr ""
+msgstr "Ürün kalemi bu siparişle ilişkilendirilmemiştir"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
-msgstr ""
+msgstr "Miktar pozitif olmalıdır"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
-msgstr ""
+msgstr "Tahsis edilecek seri numaralarını girin"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
-msgstr ""
+msgstr "Sevkiyat zaten sevk edildi"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
-msgstr ""
+msgstr "Sevkiyat bu sipariş ile ilişkilendirilmemiştir"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
-msgstr ""
+msgstr "Şu seri numaraları için bir eşleşme bulunamadı"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
-msgstr ""
+msgstr "Şu seri numaraları mevcut değildir"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
-msgstr ""
+msgstr "İade siparişi kalemi"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
-msgstr ""
+msgstr "Ürün kalemi iade siparişi ile eşleşmiyor"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
-msgstr ""
+msgstr "Ürün kalemi zaten teslim alındı"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
-msgstr ""
+msgstr "Ürün kalemleri yalnızca işlemdeki siparişlere istinaden teslim alınabilir"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
-msgstr ""
+msgstr "İade olacak miktar"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
-msgstr ""
+msgstr "Satır para birimi"
#: order/status_codes.py:17 order/status_codes.py:54 stock/status_codes.py:16
msgid "Lost"
@@ -5518,145 +5522,145 @@ msgstr "Geri Dön"
#: order/status_codes.py:108
msgid "Repair"
-msgstr ""
+msgstr "Onar"
#: order/status_codes.py:111
msgid "Replace"
-msgstr ""
+msgstr "Değiştir"
#: order/status_codes.py:114
msgid "Refund"
-msgstr ""
+msgstr "Geri öde"
#: order/status_codes.py:117
msgid "Reject"
-msgstr ""
+msgstr "Reddet"
#: order/tasks.py:47
msgid "Overdue Purchase Order"
-msgstr ""
+msgstr "Geciken Satın Alma Siparişi"
#: order/tasks.py:52
#, python-brace-format
msgid "Purchase order {po} is now overdue"
-msgstr ""
+msgstr "Satın alma siparişi {po} şimdi gecikti"
#: order/tasks.py:117
msgid "Overdue Sales Order"
-msgstr ""
+msgstr "Geciken Satış Siparişi"
#: order/tasks.py:122
#, python-brace-format
msgid "Sales order {so} is now overdue"
-msgstr ""
+msgstr "Satış siparişi {so} şimdi gecikti"
#: order/tasks.py:184
msgid "Overdue Return Order"
-msgstr ""
+msgstr "Gecikmiş İade Siparişi"
#: order/tasks.py:189
#, python-brace-format
msgid "Return order {ro} is now overdue"
-msgstr ""
+msgstr "İade siparişi {ro} şimdi gecikti"
#: part/api.py:103
msgid "Starred"
-msgstr ""
+msgstr "Yıldızlı"
#: part/api.py:105
msgid "Filter by starred categories"
-msgstr ""
+msgstr "Yıldızlı kategorilere göre filtrele"
#: part/api.py:122 stock/api.py:288
msgid "Depth"
-msgstr ""
+msgstr "Derinlik"
#: part/api.py:122
msgid "Filter by category depth"
-msgstr ""
+msgstr "Kategori derinliğine göre filtrele"
#: part/api.py:140 stock/api.py:306
msgid "Top Level"
-msgstr ""
+msgstr "Üst Seviye"
#: part/api.py:142
msgid "Filter by top-level categories"
-msgstr ""
+msgstr "Üst seviye kategorilere göre filtrele"
#: part/api.py:155 stock/api.py:321
msgid "Cascade"
-msgstr ""
+msgstr "Kademeli"
#: part/api.py:157
msgid "Include sub-categories in filtered results"
-msgstr ""
+msgstr "Filtrelenmiş sonuçlara alt kategorileri dahil et"
#: part/api.py:177
msgid "Parent"
-msgstr ""
+msgstr "Üst"
#: part/api.py:179
msgid "Filter by parent category"
-msgstr ""
+msgstr "Üst kategoriye göre filtrele"
#: part/api.py:214
msgid "Exclude sub-categories under the specified category"
-msgstr ""
+msgstr "Belirtilen kategorideki alt kategorileri hariç tut"
#: part/api.py:440
msgid "Has Results"
-msgstr ""
+msgstr "Sonuçları Olanlar"
#: part/api.py:661
msgid "Is Variant"
-msgstr ""
+msgstr "Varyant mı"
#: part/api.py:669
msgid "Is Revision"
-msgstr ""
+msgstr "Revizyon mu"
#: part/api.py:679
msgid "Has Revisions"
-msgstr ""
+msgstr "Revizyonu Olanlar"
#: part/api.py:860
msgid "BOM Valid"
-msgstr ""
+msgstr "BOM Geçerli"
#: part/api.py:969
msgid "Cascade Categories"
-msgstr ""
+msgstr "Kategorileri Kademele"
#: part/api.py:970
msgid "If true, include items in child categories of the given category"
-msgstr ""
+msgstr "Etkin ise, verilen kategorinin alt kategorilerindeki ögeleri dahil et"
#: part/api.py:976
msgid "Filter by numeric category ID or the literal 'null'"
-msgstr ""
+msgstr "Sayısal kategori ID veya 'null' sabitine göre filtrele"
#: part/api.py:1258
msgid "Assembly part is testable"
-msgstr ""
+msgstr "Montaj test edilebilir"
#: part/api.py:1267
msgid "Component part is testable"
-msgstr ""
+msgstr "Bileşen test edilebilir"
#: part/api.py:1336
msgid "Uses"
-msgstr ""
+msgstr "Kullanımlar"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
-msgstr ""
+msgstr "Parça Kategorisi"
#: part/models.py:94 users/ruleset.py:27
msgid "Part Categories"
msgstr "Parça Kategorileri"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Varsayılan Konum"
@@ -5664,694 +5668,694 @@ msgstr "Varsayılan Konum"
msgid "Default location for parts in this category"
msgstr "Bu kategori içindeki parçalar için varsayılan konum"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
-msgstr ""
+msgstr "Yapısal"
#: part/models.py:120
msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories."
-msgstr ""
+msgstr "Parçalar doğrudan bir yapısal kategoriye atanamayabilir, ancak alt kategorilere atanabilir."
#: part/models.py:129
msgid "Default keywords"
-msgstr ""
+msgstr "Varsayılan anahtar kelimeler"
#: part/models.py:130
msgid "Default keywords for parts in this category"
-msgstr ""
+msgstr "Bu kategoridaki parçalar için varsayılan anahtar kelimeler"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
-msgstr ""
+msgstr "Simge"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
-msgstr ""
+msgstr "Simge (isteğe bağlı)"
#: part/models.py:182
msgid "You cannot make this part category structural because some parts are already assigned to it!"
-msgstr ""
+msgstr "Bu parça kategorisini yapısal hale getiremezsiniz çünkü bazı parçalar zaten bu kategoriye atanmıştır!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
-msgstr ""
+msgstr "Parça Kategorisi Parametre Şablonu"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
-msgstr ""
+msgstr "Varsayılan Değer"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
-msgstr ""
+msgstr "Varsayılan Parametre Değeri"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Parçalar"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
-msgstr ""
+msgstr "Kilitli bir parçanın parametreleri silinemez"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
-msgstr ""
+msgstr "Kilitli bir parçanın parametreleri değiştirilemez"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
-msgstr ""
+msgstr "Bu parça kilitli olduğu için silinemez"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
-msgstr ""
+msgstr "Bu parça hala aktif olduğundan silinemez"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
-msgstr ""
+msgstr "Bu parça bir montajda kullanıldığından silinemez"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
-msgstr ""
+msgstr "'{self}' parçası, '{parent}' için BOM'da kullanılamaz (yinelemeli)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
-msgstr ""
+msgstr "'{parent}' parçası, '{self}' için BOM'da kullanılır (yinelemeli)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
-msgstr ""
+msgstr "IPN, düzenli ifade kalıbı {pattern} ile eşleşmelidir"
+
+#: part/models.py:777
+msgid "Part cannot be a revision of itself"
+msgstr "Parça, kendisinin revizyonu olamaz"
+
+#: part/models.py:784
+msgid "Cannot make a revision of a part which is already a revision"
+msgstr "Zaten bir revizyon olan bir parçanın revizyonu yapılamaz"
+
+#: part/models.py:791
+msgid "Revision code must be specified"
+msgstr "Revizyon kodu belirtilmelidir"
#: part/models.py:798
-msgid "Part cannot be a revision of itself"
-msgstr ""
+msgid "Revisions are only allowed for assembly parts"
+msgstr "Revizyonlara yalnızca montaj parçaları için izin verilir"
#: part/models.py:805
-msgid "Cannot make a revision of a part which is already a revision"
-msgstr ""
-
-#: part/models.py:812
-msgid "Revision code must be specified"
-msgstr ""
-
-#: part/models.py:819
-msgid "Revisions are only allowed for assembly parts"
-msgstr ""
-
-#: part/models.py:826
msgid "Cannot make a revision of a template part"
-msgstr ""
+msgstr "Bir şablon parçanın revizyonu yapılamaz"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
-msgstr ""
+msgstr "Üst parça aynı şablonu göstermelidir"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
-msgstr ""
+msgstr "Bu seri numarasına sahip stok kalemi zaten var"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
-msgstr ""
+msgstr "Kopyası oluşturulan parça revizyonu zaten var."
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
-msgstr ""
+msgstr "Bu Ad, IPN ve Revizyona sahip parça zaten var."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
-msgstr ""
+msgstr "Parçalar yapısal parça kategorilerine atanamaz!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Parça adı"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Şablon Mu"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Bu parça bir şablon parçası mı?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
-msgstr "Bu parça başka bir parçanın çeşidi mi?"
+msgstr "Bu parça başka bir parçanın varyantı mı?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
-msgstr "Çeşidi"
+msgstr "Şunun Varyantı"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
-msgstr ""
+msgstr "Açıklama (isteğe bağlı)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Anahtar kelimeler"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
-msgstr ""
+msgstr "Arama sonuçlarında görünürlüğü artırmak için parça anahtar kelimeleri"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
-msgstr ""
+msgstr "Parça kategorisi"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "DPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Parça revizyon veya versiyon numarası"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Revizyon"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
-msgstr ""
+msgstr "Bu parça başka bir parçanın revizyonu mu?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
-msgstr ""
+msgstr "Şunun Revizyonu"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
-msgstr ""
+msgstr "Bu kalem normalde nerede depolanır?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Varsayılan Tedarikçi"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Varsayılan tedarikçi parçası"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
-msgstr ""
+msgstr "Varsayılan Son Kullanma"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
-msgstr ""
+msgstr "Bu parçanın stok kalemleri için son kullanma süresi (gün olarak)"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Minimum Stok"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
-msgstr ""
+msgstr "İzin verilen minimum stok düzeyi"
+
+#: part/models.py:1265
+msgid "Units of measure for this part"
+msgstr "Bu parça için ölçü birimleri"
+
+#: part/models.py:1272
+msgid "Can this part be built from other parts?"
+msgstr "Bu parça diğer parçalardan üretilebilir mi?"
+
+#: part/models.py:1278
+msgid "Can this part be used to build other parts?"
+msgstr "Bu parça diğer parçaların üretiminde kullanılabilir mi?"
#: part/models.py:1284
-msgid "Units of measure for this part"
-msgstr ""
-
-#: part/models.py:1291
-msgid "Can this part be built from other parts?"
-msgstr "Bu parça diğer parçalardan yapılabilir mi?"
-
-#: part/models.py:1297
-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:1303
msgid "Does this part have tracking for unique items?"
-msgstr ""
+msgstr "Bu parçanın benzersiz kalemler için izleme özelliği var mı?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
-msgstr ""
+msgstr "Bu parçanın test sonuçları kaydedilebilir mi?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Bu parça müşterilere satılabilir mi?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Bu parça aktif mi?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
-msgstr ""
+msgstr "Kilitli parçalar değiştirilemez"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
-msgstr ""
+msgstr "Bu, yazılım ürünü veya lisans gibi sanal bir parça mı?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
-msgstr ""
+msgstr "BOM Doğrulandı"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
-msgstr ""
+msgstr "Bu parçanın BOM'u geçerli mi?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
-msgstr ""
+msgstr "BOM sağlama toplamı"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
-msgstr ""
+msgstr "Saklanan BOM sağlama toplamı"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
-msgstr ""
+msgstr "BOM'u kontrol eden"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
-msgstr ""
+msgstr "BOM kontrol tarihi"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Oluşturan Kullanıcı"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
-msgstr ""
+msgstr "Bu parçanın sorumlu sahibi"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
-msgstr ""
+msgstr "Birden fazla sat"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
-msgstr ""
+msgstr "Fiyat hesaplamalarını önbelleğe almak için kullanılan para birimi"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
-msgstr ""
+msgstr "Minimum BOM Maliyeti"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
-msgstr ""
+msgstr "Bileşenlerin minimum maliyeti"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
-msgstr ""
+msgstr "Maksimum BOM Maliyeti"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
-msgstr ""
+msgstr "Bileşenlerin maksimum maliyeti"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
-msgstr ""
+msgstr "Minimum Satın Alma Maliyeti"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
-msgstr ""
+msgstr "Minimum tarihsel satın alma maliyeti"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
-msgstr ""
+msgstr "Maksimum Satın Alma Maliyeti"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
-msgstr ""
+msgstr "Maksimum tarihsel satın alma maliyeti"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
-msgstr ""
+msgstr "Minimum Dahili Fiyat"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
-msgstr ""
+msgstr "Dahili fiyat kademelerine dayalı minimum maliyet"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
-msgstr ""
+msgstr "Maksimum Dahili Fiyat"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
-msgstr ""
+msgstr "Dahili fiyat kademelerine dayalı maksimum maliyet"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
-msgstr ""
+msgstr "Minimum Tedarikçi Fiyatı"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
-msgstr ""
+msgstr "Parça için minimum dış tedarikçi fiyatı"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
-msgstr ""
+msgstr "Maksimum Tedarikçi Fiyatı"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
-msgstr ""
+msgstr "Parça için maksimum dış tedarikçi fiyatı"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
-msgstr ""
+msgstr "Minimum Varyant Maliyeti"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
-msgstr ""
+msgstr "Varyant parçaların hesaplanan minimum maliyeti"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
-msgstr ""
+msgstr "Maksimum Varyant Maliyeti"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
-msgstr ""
+msgstr "Varyant parçaların hesaplanan maksimum maliyeti"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
-msgstr ""
+msgstr "Minimum Maliyet"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
-msgstr ""
+msgstr "Minimum maliyeti geçersiz kıl"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
-msgstr ""
+msgstr "Maksimum Maliyet"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
-msgstr ""
+msgstr "Maksimum maliyeti geçersiz kıl"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
-msgstr ""
+msgstr "Hesaplanan genel minimum maliyet"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
-msgstr ""
+msgstr "Hesaplanan genel maksimum maliyet"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
-msgstr ""
+msgstr "Minimum Satış Fiyatı"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
-msgstr ""
+msgstr "Fiyat kademelerine dayalı minimum satış fiyatı"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
-msgstr ""
+msgstr "Maksimum Satış Fiyatı"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
-msgstr ""
+msgstr "Fiyat kademelerine dayalı maksimum satış fiyatı"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
-msgstr ""
+msgstr "Minimum Satış Maliyeti"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
-msgstr ""
+msgstr "Minimum tarihsel satış fiyatı"
+
+#: part/models.py:3466
+msgid "Maximum Sale Cost"
+msgstr "Maksimum Satış Maliyeti"
+
+#: part/models.py:3467
+msgid "Maximum historical sale price"
+msgstr "Maksimum tarihsel satış fiyatı"
#: part/models.py:3485
-msgid "Maximum Sale Cost"
-msgstr ""
+msgid "Part for stocktake"
+msgstr "Stok sayımı için parça"
-#: part/models.py:3486
-msgid "Maximum historical sale price"
-msgstr ""
+#: part/models.py:3490
+msgid "Item Count"
+msgstr "Kalem Sayısı"
+
+#: part/models.py:3491
+msgid "Number of individual stock entries at time of stocktake"
+msgstr "Sayım anındaki tekil stok kaydı sayısı"
+
+#: part/models.py:3499
+msgid "Total available stock at time of stocktake"
+msgstr "Sayım anındaki toplam mevcut stok"
+
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
+msgid "Date"
+msgstr "Tarih"
#: part/models.py:3504
-msgid "Part for stocktake"
-msgstr ""
+msgid "Date stocktake was performed"
+msgstr "Stok sayımının yapıldığı tarih"
-#: part/models.py:3509
-msgid "Item Count"
-msgstr ""
+#: part/models.py:3511
+msgid "Minimum Stock Cost"
+msgstr "Minimum Stok Maliyeti"
-#: part/models.py:3510
-msgid "Number of individual stock entries at time of stocktake"
-msgstr ""
+#: part/models.py:3512
+msgid "Estimated minimum cost of stock on hand"
+msgstr "Mevcut stokun tahmini minimum maliyeti"
#: part/models.py:3518
-msgid "Total available stock at time of stocktake"
-msgstr ""
-
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
-msgid "Date"
-msgstr ""
-
-#: part/models.py:3523
-msgid "Date stocktake was performed"
-msgstr ""
-
-#: part/models.py:3530
-msgid "Minimum Stock Cost"
-msgstr ""
-
-#: part/models.py:3531
-msgid "Estimated minimum cost of stock on hand"
-msgstr ""
-
-#: part/models.py:3537
msgid "Maximum Stock Cost"
-msgstr ""
+msgstr "Maksimum Stok Maliyeti"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
-msgstr ""
+msgstr "Mevcut stokun tahmini maksimum maliyeti"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
-msgstr ""
+msgstr "Parça Satış Fiyat Kademesi"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
-msgstr ""
+msgstr "Parça Test Şablonu"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
-msgstr ""
+msgstr "Geçersiz şablon adı - en az bir alfasayısal karakter içermelidir"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
-msgstr ""
+msgstr "Test şablonları sadece test edilebilir paçalar için oluşturulabilir"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
-msgstr ""
+msgstr "Aynı anahtara sahip test şablonu parça için zaten mevcut"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Test Adı"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
-msgstr ""
+msgstr "Test için bir ad girin"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
-msgstr ""
+msgstr "Test Anahtarı"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
-msgstr ""
+msgstr "Test için basitleştirilmiş anahtar"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Test Açıklaması"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
-msgstr ""
+msgstr "Bu test için açıklama girin"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
-msgstr ""
+msgstr "Bu test etkinleştirildi mi?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Gerekli"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Testi geçmesi için bu gerekli mi?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
-msgstr ""
+msgstr "Değer Gerektirir"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
-msgstr ""
+msgstr "Bir test sonucu eklerken bu test bir değer gerektirir mi?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
-msgstr ""
+msgstr "Ek Gerektirir"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
-msgstr ""
+msgstr "Bir test sonucu eklerken bu test bir dosya eki gerektirir mi?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
-msgstr ""
+msgstr "Bu test için geçerli seçenekler (virgül ile ayrılmış)"
+
+#: part/models.py:3970
+msgid "BOM item cannot be modified - assembly is locked"
+msgstr "BOM kalemi değiştirilemez - montaj kilitlidir"
#: part/models.py:3977
-msgid "BOM item cannot be modified - assembly is locked"
-msgstr ""
-
-#: part/models.py:3984
msgid "BOM item cannot be modified - variant assembly is locked"
-msgstr ""
+msgstr "BOM kalemi değiştirilemez - varyant montajı kilitlidir"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
-msgstr ""
+msgstr "Üst parçayı seçin"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
-msgstr ""
+msgstr "Alt parça"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
-msgstr ""
+msgstr "BOM'da kullanılacak parçayı seçin"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
-msgstr ""
+msgstr "Bu BOM kalemi için BOM miktarı"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
-msgstr ""
+msgstr "Bu BOM kalemi isteğe bağlıdır"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
-msgstr ""
+msgstr "Bu BOM kalemi bir sarf malzemesidir (üretim emirlerinde izlenmez)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
-msgstr ""
+msgstr "Hazırlık Payı"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
-msgstr ""
+msgstr "Bir üretimdeki hazırlık kayıplarını telafi etmek için gereken ek miktar"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
-msgstr ""
+msgstr "Fire"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
-msgstr ""
+msgstr "Bir üretim için tahmini fire oranı, yüzde olarak ifade edilir (0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
-msgstr ""
+msgstr "Kat Yuvarlama"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
-msgstr ""
+msgstr "Gerekli üretim miktarını bu değerin en yakın katına yuvarlayın"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
-msgstr ""
+msgstr "BOM kalemi referansı"
+
+#: part/models.py:4069
+msgid "BOM item notes"
+msgstr "BOM kalemi notları"
+
+#: part/models.py:4075
+msgid "Checksum"
+msgstr "Sağlama Toplamı"
#: part/models.py:4076
-msgid "BOM item notes"
-msgstr ""
+msgid "BOM line checksum"
+msgstr "BOM satırı sağlama toplamı"
+
+#: part/models.py:4081
+msgid "Validated"
+msgstr "Doğrulandı"
#: part/models.py:4082
-msgid "Checksum"
-msgstr ""
+msgid "This BOM item has been validated"
+msgstr "Bu BOM kalemi doğrulandı"
-#: part/models.py:4083
-msgid "BOM line checksum"
-msgstr ""
+#: part/models.py:4087
+msgid "Gets inherited"
+msgstr "Devralınır"
#: part/models.py:4088
-msgid "Validated"
-msgstr ""
-
-#: part/models.py:4089
-msgid "This BOM item has been validated"
-msgstr ""
+msgid "This BOM item is inherited by BOMs for variant parts"
+msgstr "Bu BOM kalemi, varyant parçaların BOM'larından devralınmıştır"
#: part/models.py:4094
-msgid "Gets inherited"
-msgstr ""
-
-#: part/models.py:4095
-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:4101
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"
+msgstr "Varyant parçaların stok kalemleri bu BOM kalemi için kullanılabilir"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
-msgstr ""
+msgstr "İzlenebilir parçalar için miktar tamsayı olmalıdır"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
-msgstr ""
+msgstr "Alt parça belirtilmelidir"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
-msgstr ""
+msgstr "BOM Kalemi Muadili"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
-msgstr ""
+msgstr "Muadil parça ile asıl parça aynı olamaz"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
-msgstr ""
+msgstr "Üst BOM kalemi"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
-msgstr ""
+msgstr "Muadil parça"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
-msgstr ""
+msgstr "Parça 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
-msgstr ""
+msgstr "Parça 2"
+
+#: part/models.py:4431
+msgid "Select Related Part"
+msgstr "İlgili Parçayı Seçin"
#: part/models.py:4438
-msgid "Select Related Part"
-msgstr ""
-
-#: part/models.py:4445
msgid "Note for this relationship"
-msgstr ""
+msgstr "Bu ilişki için not"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
-msgstr ""
+msgstr "Bir parça ile kendisi arasında parça ilişkisi oluşturulamaz"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
-msgstr ""
+msgstr "Kopyalanan ilişki zaten mevcut"
#: part/serializers.py:113
msgid "Parent Category"
-msgstr ""
+msgstr "Üst Kategori"
#: part/serializers.py:114
msgid "Parent part category"
-msgstr ""
+msgstr "Üst parça kategorisi"
#: part/serializers.py:122 part/serializers.py:163
msgid "Subcategories"
@@ -6359,370 +6363,366 @@ msgstr "Alt kategoriler"
#: part/serializers.py:202
msgid "Results"
-msgstr ""
+msgstr "Sonuçlar"
#: part/serializers.py:203
msgid "Number of results recorded against this template"
-msgstr ""
+msgstr "Bu şablon ile ilişkilendirilmiş sonuç sayısı"
#: part/serializers.py:234 part/serializers.py:252 stock/serializers.py:643
msgid "Purchase currency of this stock item"
-msgstr ""
+msgstr "Bu stok kaleminin alış para birimi"
#: part/serializers.py:279
msgid "File is not an image"
-msgstr ""
+msgstr "Dosya bir görsel değil"
#: part/serializers.py:382
msgid "Original Part"
-msgstr ""
+msgstr "Orijinal Parça"
#: part/serializers.py:383
msgid "Select original part to duplicate"
-msgstr ""
+msgstr "Kopyalanacak orijinal parçayı seçin"
#: part/serializers.py:388
msgid "Copy Image"
-msgstr ""
+msgstr "Görseli Kopyala"
#: part/serializers.py:389
msgid "Copy image from original part"
-msgstr ""
+msgstr "Orijinal parçadan görseli kopyala"
#: part/serializers.py:395
msgid "Copy BOM"
-msgstr ""
+msgstr "BOM'u Kopyala"
#: part/serializers.py:396
msgid "Copy bill of materials from original part"
-msgstr ""
+msgstr "Orijinal parçadan ürün ağacını kopyala"
#: part/serializers.py:402
msgid "Copy Parameters"
-msgstr ""
+msgstr "Parametreleri Kopyala"
#: part/serializers.py:403
msgid "Copy parameter data from original part"
-msgstr ""
+msgstr "Orijinal parçadan parametreleri kopyala"
#: part/serializers.py:409
msgid "Copy Notes"
-msgstr ""
+msgstr "Notları Kopyala"
#: part/serializers.py:410
msgid "Copy notes from original part"
-msgstr ""
+msgstr "Orijinal parçadan notları kopyala"
#: part/serializers.py:416
msgid "Copy Tests"
-msgstr ""
+msgstr "Testleri Kopyala"
#: part/serializers.py:417
msgid "Copy test templates from original part"
-msgstr ""
+msgstr "Orijinal parçadan test şablonlarını kopyala"
#: part/serializers.py:435
msgid "Initial Stock Quantity"
-msgstr ""
+msgstr "Başlangıç Stok Miktarı"
#: part/serializers.py:437
msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added."
-msgstr ""
+msgstr "Bu parça için başlangıç stok miktarını belirtin. Miktar sıfır ise, stok eklenmez."
#: part/serializers.py:444
msgid "Initial Stock Location"
-msgstr ""
+msgstr "Başlangıç Stok Konumu"
#: part/serializers.py:445
msgid "Specify initial stock location for this Part"
-msgstr ""
+msgstr "Bu parça için başlangıç stok konumunu belirtin"
#: part/serializers.py:462
msgid "Select supplier (or leave blank to skip)"
-msgstr ""
+msgstr "Tedarikçiyi seçin (veya atlamak için boş bırakın)"
#: part/serializers.py:478
msgid "Select manufacturer (or leave blank to skip)"
-msgstr ""
+msgstr "Üreticiyi seçin (veya atlamak için boş bırakın)"
#: part/serializers.py:488
msgid "Manufacturer part number"
-msgstr ""
+msgstr "Üretici parça numarası"
#: part/serializers.py:495
msgid "Selected company is not a valid supplier"
-msgstr ""
+msgstr "Seçilen şirket geçerli bir tedarikçi değildir"
#: part/serializers.py:504
msgid "Selected company is not a valid manufacturer"
-msgstr ""
+msgstr "Seçilen şirket geçerli bir üretici değildir"
#: part/serializers.py:515
msgid "Manufacturer part matching this MPN already exists"
-msgstr ""
+msgstr "Bu MPN ile eşleşen üretici parçası zaten mevcut"
#: part/serializers.py:522
msgid "Supplier part matching this SKU already exists"
-msgstr ""
+msgstr "Bu SKU ile tedarikçi parçası zaten mevcut"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
-msgstr ""
+msgstr "Kategori Adı"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
-msgstr ""
+msgstr "Üretiliyor"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
-msgstr ""
+msgstr "Bu parçanın şu anda üretimde olan miktarı"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
-msgstr ""
+msgstr "Bu parçanın üretilmesi planlanan açık miktarı"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Stok Kalemleri"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
-msgstr ""
+msgstr "Revizyonlar"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
-msgstr ""
+msgstr "Toplam Stok"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
-msgstr ""
+msgstr "Tahsis Edilmemiş Stok"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
-msgstr ""
+msgstr "Varyant Stoku"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
-msgstr ""
+msgstr "Parçanın Kopyasını Oluştur"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
-msgstr ""
+msgstr "Başlangıç verisini diğer parçadan kopyala"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
-msgstr ""
+msgstr "Başlangıç Stoku"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
-msgstr ""
+msgstr "Başlangıç stok miktarı ile parça oluştur"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
-msgstr ""
+msgstr "Tedarikçi Bilgileri"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
-msgstr ""
+msgstr "Bu parça için ilk tedarikçi bilgilerini ekleyin"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
-msgstr ""
+msgstr "Kategori Parametrelerini Kopyala"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
-msgstr ""
+msgstr "Seçilen parça kategorisinden parametre şablonlarını kopyala"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
-msgstr ""
+msgstr "Mevcut Görsel"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
-msgstr ""
+msgstr "Mevcut parça görselinin dosya adı"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
-msgstr ""
+msgstr "Görsel dosyası mevcut değil"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
-msgstr ""
+msgstr "Tüm ürün ağacını doğrula"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
-msgstr ""
+msgstr "Üretebilir Miktar"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
-msgstr ""
+msgstr "Üretim Emirleri için Gerekli"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
-msgstr ""
+msgstr "Üretim Emirlerine Tahsis Edildi"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
-msgstr ""
+msgstr "Satış Siparişleri için Gerekli"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
-msgstr ""
+msgstr "Satış Siparişlerine Tahsis Edildi"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
-msgstr ""
+msgstr "Minimum Fiyat"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
-msgstr ""
+msgstr "Minimum fiyat için hesaplanan değeri geçersiz kıl"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
-msgstr ""
+msgstr "Minimum fiyat para birimi"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
-msgstr ""
+msgstr "Maksimum Fiyat"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
-msgstr ""
+msgstr "Maksimum fiyat için hesaplanan değeri geçersiz kıl"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
-msgstr ""
+msgstr "Maksimum fiyat para birimi"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
-msgstr ""
+msgstr "Güncelle"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
-msgstr ""
+msgstr "Bu parçanın fiyatlandırmasını güncelle"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
-msgstr ""
+msgstr "Sağlanan para birimlerinden {default_currency} para birimine dönüştürülemedi"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
-msgstr ""
+msgstr "Minimum fiyat maksimum fiyattan yüksek olamaz"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
-msgstr ""
+msgstr "Maksimum fiyat minimum fiyattan düşük olamaz"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
-msgstr ""
+msgstr "Üst montajı seçin"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
-msgstr ""
+msgstr "Bileşeni seçin"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
-msgstr ""
+msgstr "BOM'u kopyalanacak parçayı seçin"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
-msgstr ""
+msgstr "Mevcut Verileri Temizle"
+
+#: part/serializers.py:1800
+msgid "Remove existing BOM items before copying"
+msgstr "Kopyalamadan önce mevcut BOM kalemlerini temizle"
+
+#: part/serializers.py:1805
+msgid "Include Inherited"
+msgstr "Devralınanı Dahil Et"
+
+#: part/serializers.py:1806
+msgid "Include BOM items which are inherited from templated parts"
+msgstr "Şablon parçalardan devralınan BOM kalemlerini dahil et"
#: part/serializers.py:1811
-msgid "Remove existing BOM items before copying"
-msgstr ""
+msgid "Skip Invalid Rows"
+msgstr "Geçersiz Satırları Atla"
-#: part/serializers.py:1816
-msgid "Include Inherited"
-msgstr ""
+#: part/serializers.py:1812
+msgid "Enable this option to skip invalid rows"
+msgstr "Geçersiz satırları atlamak için bu seçeneği etkinleştir"
#: part/serializers.py:1817
-msgid "Include BOM items which are inherited from templated parts"
-msgstr ""
-
-#: part/serializers.py:1822
-msgid "Skip Invalid Rows"
-msgstr ""
-
-#: part/serializers.py:1823
-msgid "Enable this option to skip invalid rows"
-msgstr ""
-
-#: part/serializers.py:1828
msgid "Copy Substitute Parts"
-msgstr ""
+msgstr "Muadil Parçaları Kopyala"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
-msgstr ""
+msgstr "BOM kalemlerinin kopyasını oluştururken muadil parçaları kopyala"
#: part/tasks.py:41
msgid "Low stock notification"
-msgstr ""
+msgstr "Düşük stok bildirimi"
#: part/tasks.py:43
#, python-brace-format
msgid "The available stock for {part.name} has fallen below the configured minimum level"
-msgstr ""
+msgstr "{part.name} için mevcut stok, yapılandırılan minimum seviyenin altına düştü"
#: part/tasks.py:73
msgid "Stale stock notification"
-msgstr ""
+msgstr "Eskimiş stok bildirimi"
#: part/tasks.py:77
msgid "You have 1 stock item approaching its expiry date"
-msgstr ""
+msgstr "Geçerlilik tarihi yaklaşan 1 adet stok kaleminiz var"
#: part/tasks.py:79
#, python-brace-format
msgid "You have {item_count} stock items approaching their expiry dates"
-msgstr ""
+msgstr "Geçerlilik tarihleri yaklaşan {item_count} adet stok kaleminiz var"
#: part/tasks.py:88
msgid "No expiry date"
-msgstr ""
+msgstr "Geçerlilik tarihi yok"
#: part/tasks.py:95
msgid "Expired {abs(days_diff)} days ago"
-msgstr ""
+msgstr "{abs(days_diff)} Gün önce süresi doldu"
#: part/tasks.py:98
msgid "Expires today"
-msgstr ""
+msgstr "Süresi bugün doluyor"
#: part/tasks.py:101
#, python-brace-format
msgid "{days_until_expiry} days"
-msgstr ""
+msgstr "{days_until_expiry} gün"
#: plugin/api.py:80
msgid "Builtin"
-msgstr ""
+msgstr "Yerleşik"
#: plugin/api.py:94
msgid "Mandatory"
-msgstr ""
+msgstr "Zorunlu"
#: plugin/api.py:109
msgid "Sample"
-msgstr ""
+msgstr "Numune"
#: plugin/api.py:123 plugin/models.py:167
msgid "Installed"
-msgstr ""
+msgstr "Kuruldu"
#: plugin/api.py:190
msgid "Plugin cannot be deleted as it is currently active"
-msgstr ""
+msgstr "Bu eklenti şu an aktif olduğundan silinemez"
#: plugin/base/action/api.py:56
msgid "No action specified"
@@ -6732,247 +6732,247 @@ msgstr "İşlem belirtilmedi"
msgid "No matching action found"
msgstr "Eşleşen eylem bulunamadı"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Barkod verisi için eşleşme bulunamadı"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Barkod verisi için eşleşme bulundu"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
-msgstr ""
+msgstr "Model desteklenmiyor"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
-msgstr ""
+msgstr "Model örneği bulunamadı"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
-msgstr ""
+msgstr "Barkod mevcut kalemle eşleşiyor"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
-msgstr ""
+msgstr "Eşleşen parça verisi bulunamadı"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
-msgstr ""
+msgstr "Eşleşen tedarikçi parçası verisi bulunamadı"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
-msgstr ""
+msgstr "Birden çok eşleşen tedarikçi parçası bulundu"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
-msgstr ""
+msgstr "Barkod verisi için eşleşen eklenti bulunamadı"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
-msgstr ""
+msgstr "Eşleşen tedarikçi parçası"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
-msgstr ""
+msgstr "Ürün kalemi zaten teslim alındı"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
-msgstr ""
+msgstr "Tedarikçi barkodu için uygun eklenti bulunamadı"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
-msgstr ""
+msgstr "Birden çok eşleşen satır bulundu"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
-msgstr ""
+msgstr "Eşleşen satır bulunamadı"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
-msgstr ""
+msgstr "Satış siparişi sağlanmadı"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
-msgstr ""
+msgstr "Barkod mevcut bir stok kalemiyle eşleşmiyor"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
-msgstr ""
+msgstr "Stok kalemi satır kalemiyle eşleşmiyor"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
-msgstr ""
+msgstr "Mevcut stok yetersiz"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
-msgstr ""
+msgstr "Stok kalemi satış siparişine tahsis edilmiştir"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
-msgstr ""
+msgstr "Yetersiz bilgi"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
-msgstr ""
+msgstr "Eşleşen öge bulundu"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
-msgstr ""
+msgstr "Tedarikçi parçası satır ile eşleşmiyor"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
-msgstr ""
+msgstr "Satır zaten tamamlandı"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
-msgstr ""
+msgstr "Satır kalemini teslim almak için gerekli ek bilgiler"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
-msgstr ""
+msgstr "Teslim alınan satın alma satırı"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
-msgstr ""
+msgstr "Satırı teslim alınamadı"
#: plugin/base/barcodes/serializers.py:53
msgid "Scanned barcode data"
-msgstr ""
+msgstr "Taranan barkod verisi"
#: plugin/base/barcodes/serializers.py:62
msgid "Model name to generate barcode for"
-msgstr ""
+msgstr "Barkod oluşturulacak model adı"
#: plugin/base/barcodes/serializers.py:67
msgid "Primary key of model object to generate barcode for"
-msgstr ""
+msgstr "Barkod oluşturulacak model nesnesinin birincil anahtarı"
#: plugin/base/barcodes/serializers.py:137
msgid "Purchase Order to allocate items against"
-msgstr ""
+msgstr "Satın alma siparişi kapsamında tahsis edilecek kalemler"
#: plugin/base/barcodes/serializers.py:143
msgid "Purchase order is not open"
-msgstr ""
+msgstr "Satın alma siparişi açık değil"
#: plugin/base/barcodes/serializers.py:161
msgid "Supplier to receive items from"
-msgstr ""
+msgstr "Ürünlerin teslim alınacağı tedarikçi"
#: plugin/base/barcodes/serializers.py:168
msgid "PurchaseOrder to receive items against"
-msgstr ""
+msgstr "Satın alma siparişi kapsamında teslim alınacak kalemler"
#: plugin/base/barcodes/serializers.py:174
msgid "Purchase order has not been placed"
-msgstr ""
+msgstr "Satın alma siparişi henüz verilmedi"
#: plugin/base/barcodes/serializers.py:182
msgid "Location to receive items into"
-msgstr ""
+msgstr "Ürünlerin teslim alınacağı konum"
#: plugin/base/barcodes/serializers.py:188
msgid "Cannot select a structural location"
-msgstr ""
+msgstr "Yapısal bir konum seçilemez"
#: plugin/base/barcodes/serializers.py:196
msgid "Purchase order line item to receive items against"
-msgstr ""
+msgstr "Satın alma siparişi kapsamında teslim alınacak kalemler"
#: plugin/base/barcodes/serializers.py:202
msgid "Automatically allocate stock items to the purchase order"
-msgstr ""
+msgstr "Stok kalemlerini satın alma siparişine otomatik olarak tahsis edin"
#: plugin/base/barcodes/serializers.py:215
msgid "Sales Order to allocate items against"
-msgstr ""
+msgstr "Satış siparişi kapsamında tahsis edilecek kalemler"
#: plugin/base/barcodes/serializers.py:221
msgid "Sales order is not open"
-msgstr ""
+msgstr "Satın alma siparişi açık değil"
#: plugin/base/barcodes/serializers.py:229
msgid "Sales order line item to allocate items against"
-msgstr ""
+msgstr "Satış siparişi satırı kapsamında tahsis edilecek kalemler"
#: plugin/base/barcodes/serializers.py:236
msgid "Sales order shipment to allocate items against"
-msgstr ""
+msgstr "Satış siparişi sevkiyatı kapsamında tahsis edilecek kalemler"
#: plugin/base/barcodes/serializers.py:242
msgid "Shipment has already been delivered"
-msgstr ""
+msgstr "Sevkiyat zaten teslim edildi"
#: plugin/base/barcodes/serializers.py:247
msgid "Quantity to allocate"
-msgstr ""
+msgstr "Tahsis edilecek miktar"
#: plugin/base/label/label.py:41
msgid "Label printing failed"
-msgstr ""
+msgstr "Etiket yazdırılamadı"
#: plugin/base/label/mixins.py:53
msgid "Error rendering label to PDF"
-msgstr ""
+msgstr "Etiket PDF olarak işlenirken hata oluştu"
#: plugin/base/label/mixins.py:67
msgid "Error rendering label to HTML"
-msgstr ""
+msgstr "Etiket HTML olarak işlenirken hata oluştu"
#: plugin/base/label/mixins.py:144
msgid "No items provided to print"
-msgstr ""
+msgstr "Yazdırılacak öge seçilmedi"
#: plugin/base/ui/serializers.py:30
msgid "Plugin Name"
-msgstr ""
+msgstr "Eklenti Adı"
#: plugin/base/ui/serializers.py:34
msgid "Feature Type"
-msgstr ""
+msgstr "Özellik Türü"
#: plugin/base/ui/serializers.py:39
msgid "Feature Label"
-msgstr ""
+msgstr "Özellik Etiketi"
#: plugin/base/ui/serializers.py:44
msgid "Feature Title"
-msgstr ""
+msgstr "Özellik Başlığı"
#: plugin/base/ui/serializers.py:49
msgid "Feature Description"
-msgstr ""
+msgstr "Özellik Açıklaması"
#: plugin/base/ui/serializers.py:54
msgid "Feature Icon"
-msgstr ""
+msgstr "Özellik Simgesi"
#: plugin/base/ui/serializers.py:58
msgid "Feature Options"
-msgstr ""
+msgstr "Özellik Seçenekleri"
#: plugin/base/ui/serializers.py:61
msgid "Feature Context"
-msgstr ""
+msgstr "Özellik Bağlamı"
#: plugin/base/ui/serializers.py:64
msgid "Feature Source (javascript)"
-msgstr ""
+msgstr "Özellik Kaynağı (javascript)"
#: plugin/builtin/barcodes/inventree_barcode.py:27
msgid "InvenTree Barcodes"
-msgstr ""
+msgstr "InvenTree Barkodları"
#: plugin/builtin/barcodes/inventree_barcode.py:28
msgid "Provides native support for barcodes"
-msgstr ""
+msgstr "Barkodlar için yerleşik destek sağlar"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -6988,859 +6988,859 @@ msgstr ""
#: plugin/builtin/suppliers/digikey.py:20 plugin/builtin/suppliers/lcsc.py:22
#: plugin/builtin/suppliers/mouser.py:20 plugin/builtin/suppliers/tme.py:22
msgid "InvenTree contributors"
-msgstr ""
+msgstr "InvenTree'ye katkıda bulunanlar"
#: plugin/builtin/barcodes/inventree_barcode.py:34
msgid "Internal Barcode Format"
-msgstr ""
+msgstr "Dahili Barkod Biçimi"
#: plugin/builtin/barcodes/inventree_barcode.py:35
msgid "Select an internal barcode format"
-msgstr ""
+msgstr "Dahili bir barkod biçimi seçin"
#: plugin/builtin/barcodes/inventree_barcode.py:37
msgid "JSON barcodes (human readable)"
-msgstr ""
+msgstr "JSON barkodları (insan tarafından okunabilir)"
#: plugin/builtin/barcodes/inventree_barcode.py:38
msgid "Short barcodes (space optimized)"
-msgstr ""
+msgstr "Kısa barkodlar (alan optimizasyonu yapılmış)"
#: plugin/builtin/barcodes/inventree_barcode.py:43
msgid "Short Barcode Prefix"
-msgstr ""
+msgstr "Kısa Barkod Ön Eki"
#: plugin/builtin/barcodes/inventree_barcode.py:45
msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances"
-msgstr ""
+msgstr "Kısa barkodlar için kullanılan ön eki özelleştirin; birden fazla InvenTree örneği bulunan ortamlar için kullanışlı olabilir"
#: plugin/builtin/events/auto_create_builds.py:28
msgid "Auto Create Builds"
-msgstr ""
+msgstr "Üretimleri Otomatik Oluştur"
#: plugin/builtin/events/auto_create_builds.py:31
msgid "Automatically create build orders for assemblies"
-msgstr ""
+msgstr "Montajlar için otomatik olarak üretim emirleri oluşturun"
#: plugin/builtin/events/auto_issue_orders.py:17
msgid "Auto Issue Orders"
-msgstr ""
+msgstr "Siparişleri Otomatik Düzenle"
#: plugin/builtin/events/auto_issue_orders.py:20
msgid "Automatically issue orders on the assigned target date"
-msgstr ""
+msgstr "Siparişler, tanımlanan hedef tarihte otomatik olarak oluşturulur"
#: plugin/builtin/events/auto_issue_orders.py:30
msgid "Auto Issue Build Orders"
-msgstr ""
+msgstr "Üretim Emirlerini Otomatik Düzenle"
#: plugin/builtin/events/auto_issue_orders.py:32
msgid "Automatically issue build orders on the assigned target date"
-msgstr ""
+msgstr "Üretim emirleri, tanımlanan hedef tarihte otomatik olarak oluşturulur"
#: plugin/builtin/events/auto_issue_orders.py:38
msgid "Auto Issue Purchase Orders"
-msgstr ""
+msgstr "Satın Alma Siparişlerini Otomatik Düzenle"
#: plugin/builtin/events/auto_issue_orders.py:40
msgid "Automatically issue purchase orders on the assigned target date"
-msgstr ""
+msgstr "Satın alma siparişleri, tanımlanan hedef tarihte otomatik olarak düzenlenir"
#: plugin/builtin/events/auto_issue_orders.py:46
msgid "Auto Issue Sales Orders"
-msgstr ""
+msgstr "Satış Siparişlerini Otomatik Düzenle"
#: plugin/builtin/events/auto_issue_orders.py:48
msgid "Automatically issue sales orders on the assigned target date"
-msgstr ""
+msgstr "Satış siparişleri, tanımlanan hedef tarihte otomatik olarak düzenlenir"
#: plugin/builtin/events/auto_issue_orders.py:54
msgid "Auto Issue Return Orders"
-msgstr ""
+msgstr "İade Siparişlerini Otomatik Düzenle"
#: plugin/builtin/events/auto_issue_orders.py:56
msgid "Automatically issue return orders on the assigned target date"
-msgstr ""
+msgstr "İade siparişleri, tanımlanan hedef tarihte otomatik olarak düzenlenir"
#: plugin/builtin/events/auto_issue_orders.py:62
msgid "Issue Backdated Orders"
-msgstr ""
+msgstr "Geriye Dönük Siparişleri Düzenle"
#: plugin/builtin/events/auto_issue_orders.py:63
msgid "Automatically issue orders that are backdated"
-msgstr ""
+msgstr "Geriye dönük siparişler otomatik olarak düzenlenir"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
-msgstr ""
+msgstr "Seviyeler"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
-msgstr ""
-
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
-msgid "Total Quantity"
-msgstr ""
+msgstr "Dışa aktarılacak seviye sayısı - tüm BOM seviyeleri için sıfır olarak ayarlayın"
#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
+msgid "Total Quantity"
+msgstr "Toplam Miktar"
+
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
-msgstr ""
+msgstr "BOM'daki her parçanın toplam miktarını ekle"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
-msgstr ""
+msgstr "Stok Verisi"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
-msgstr ""
+msgstr "Parça stok verilerini ekle"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
-msgstr ""
+msgstr "Fiyatlandırma Verisi"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
-msgstr ""
+msgstr "Parça fiyatlandırma verilerini ekle"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
-msgstr ""
+msgstr "Tedarikçi Verisi"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
-msgstr ""
-
-#: plugin/builtin/exporter/bom_exporter.py:48
-msgid "Manufacturer Data"
-msgstr ""
+msgstr "Tedarikçi verilerini ekle"
#: plugin/builtin/exporter/bom_exporter.py:49
-msgid "Include manufacturer data"
-msgstr ""
+msgid "Manufacturer Data"
+msgstr "Üretici Verisi"
-#: plugin/builtin/exporter/bom_exporter.py:54
-msgid "Substitute Data"
-msgstr ""
+#: plugin/builtin/exporter/bom_exporter.py:50
+msgid "Include manufacturer data"
+msgstr "Üretici verilerini ekle"
#: plugin/builtin/exporter/bom_exporter.py:55
-msgid "Include substitute part data"
-msgstr ""
+msgid "Substitute Data"
+msgstr "Muadil Verisi"
-#: plugin/builtin/exporter/bom_exporter.py:60
-msgid "Parameter Data"
-msgstr ""
+#: plugin/builtin/exporter/bom_exporter.py:56
+msgid "Include substitute part data"
+msgstr "Muadil parça verilerini ekle"
#: plugin/builtin/exporter/bom_exporter.py:61
-msgid "Include part parameter data"
-msgstr ""
+msgid "Parameter Data"
+msgstr "Parametre Verisi"
-#: plugin/builtin/exporter/bom_exporter.py:70
-msgid "Multi-Level BOM Exporter"
-msgstr ""
+#: plugin/builtin/exporter/bom_exporter.py:62
+msgid "Include part parameter data"
+msgstr "Parça parametre verilerini ekle"
#: plugin/builtin/exporter/bom_exporter.py:71
+msgid "Multi-Level BOM Exporter"
+msgstr "Çok Seviyeli BOM Dışa Aktarıcı"
+
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
-msgstr ""
+msgstr "Çok seviyeli BOM'ları dışa aktarma desteği sunar"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
-msgstr ""
+msgstr "BOM Seviyesi"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
-msgstr ""
+msgstr "Muadil {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
-msgstr ""
+msgstr "Tedarikçi {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
-msgstr ""
+msgstr "Tedarikçi {n} SKU"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
-msgstr ""
+msgstr "Tedarikçi {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
-msgstr ""
+msgstr "Üretici {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
-msgstr ""
+msgstr "Üretici {n} MPN"
#: plugin/builtin/exporter/inventree_exporter.py:14
msgid "InvenTree Generic Exporter"
-msgstr ""
+msgstr "InvenTree Genel Dışa Aktarıcı"
#: plugin/builtin/exporter/inventree_exporter.py:15
msgid "Provides support for exporting data from InvenTree"
-msgstr ""
+msgstr "InvenTree'den verileri dışa aktarma desteği sağlar"
#: plugin/builtin/exporter/parameter_exporter.py:16
msgid "Exclude Inactive"
-msgstr ""
+msgstr "Pasifi Hariç Tut"
#: plugin/builtin/exporter/parameter_exporter.py:17
msgid "Exclude parameters which are inactive"
-msgstr ""
+msgstr "Pasif parametreleri hariç tut"
#: plugin/builtin/exporter/parameter_exporter.py:29
msgid "Parameter Exporter"
-msgstr ""
+msgstr "Parametre Dışa Aktarıcı"
#: plugin/builtin/exporter/parameter_exporter.py:30
msgid "Exporter for model parameter data"
-msgstr ""
+msgstr "Model parametre verilerini dışa aktarıcı"
#: plugin/builtin/exporter/stocktake_exporter.py:25
msgid "Include External Stock"
-msgstr ""
+msgstr "Harici Stoku Ekle"
#: plugin/builtin/exporter/stocktake_exporter.py:26
msgid "Include external stock in the stocktake data"
-msgstr ""
+msgstr "Stok sayımı verilerine harici stoku ekle"
#: plugin/builtin/exporter/stocktake_exporter.py:31
msgid "Include Variant Items"
-msgstr ""
+msgstr "Varyantları Ekle"
#: plugin/builtin/exporter/stocktake_exporter.py:32
msgid "Include part variant stock in pricing calculations"
-msgstr ""
+msgstr "Fiyat hesaplamalarına parça varyant stokunu ekle"
#: plugin/builtin/exporter/stocktake_exporter.py:44
msgid "Part Stocktake Exporter"
-msgstr ""
+msgstr "Parça Stok Sayımı Dışa Aktarıcı"
#: plugin/builtin/exporter/stocktake_exporter.py:45
msgid "Exporter for part stocktake data"
-msgstr ""
+msgstr "Parça stok sayımı dışa aktarıcısı"
#: plugin/builtin/exporter/stocktake_exporter.py:108
msgid "Minimum Unit Cost"
-msgstr ""
+msgstr "Minimum Birim Maliyeti"
#: plugin/builtin/exporter/stocktake_exporter.py:109
msgid "Maximum Unit Cost"
-msgstr ""
+msgstr "Maksimum Birim Maliyeti"
#: plugin/builtin/exporter/stocktake_exporter.py:110
msgid "Minimum Total Cost"
-msgstr ""
+msgstr "Minimum Toplam Maliyet"
#: plugin/builtin/exporter/stocktake_exporter.py:111
msgid "Maximum Total Cost"
-msgstr ""
+msgstr "Maksimum Toplam Maliyet"
#: plugin/builtin/integration/core_notifications.py:23
msgid "InvenTree UI Notifications"
-msgstr ""
+msgstr "InvenTree Arayüz Bildirimleri"
#: plugin/builtin/integration/core_notifications.py:26
msgid "Integrated UI notification methods"
-msgstr ""
+msgstr "Entegre arayüz bildirim yöntemleri"
#: plugin/builtin/integration/core_notifications.py:67
msgid "InvenTree Email Notifications"
-msgstr ""
+msgstr "InvenTree E-posta Bildirimleri"
#: plugin/builtin/integration/core_notifications.py:70
msgid "Integrated email notification methods"
-msgstr ""
+msgstr "Entegre e-posta bildirim yöntemleri"
#: plugin/builtin/integration/core_notifications.py:75
msgid "Allow email notifications"
-msgstr ""
+msgstr "E-posta bildirimlerine izin verin"
#: plugin/builtin/integration/core_notifications.py:76
msgid "Allow email notifications to be sent to this user"
-msgstr ""
+msgstr "Bu kullanıcıya e-posta bildirimlerinin gönderilmesine izin verin"
#: plugin/builtin/integration/core_notifications.py:123
msgid "InvenTree Slack Notifications"
-msgstr ""
+msgstr "InvenTree Slack Bildirimleri"
#: plugin/builtin/integration/core_notifications.py:126
msgid "Integrated Slack notification methods"
-msgstr ""
+msgstr "InvenTree Slack bildirim yöntemleri"
#: plugin/builtin/integration/core_notifications.py:131
msgid "Slack incoming webhook url"
-msgstr ""
+msgstr "Slack gelen webhook URL'si"
#: plugin/builtin/integration/core_notifications.py:132
msgid "URL that is used to send messages to a slack channel"
-msgstr ""
+msgstr "Bir Slack kanalına mesajlar göndermek için kullanılacak URL"
#: plugin/builtin/integration/core_notifications.py:162
msgid "Open link"
-msgstr ""
+msgstr "Bağlantıyı aç"
#: plugin/builtin/integration/currency_exchange.py:22
msgid "InvenTree Currency Exchange"
-msgstr ""
+msgstr "InvenTree Döviz Kuru"
#: plugin/builtin/integration/currency_exchange.py:23
msgid "Default currency exchange integration"
-msgstr ""
+msgstr "Varsayılan döviz kuru entegrasyonu"
#: plugin/builtin/integration/machine_types.py:15
msgid "InvenTree Machines"
-msgstr ""
+msgstr "InvenTree Makineleri"
#: plugin/builtin/integration/machine_types.py:16
msgid "Built-in machine types for InvenTree"
-msgstr ""
+msgstr "InvenTree için yerleşik makine türleri"
#: plugin/builtin/integration/part_notifications.py:20
msgid "Part Notifications"
-msgstr ""
+msgstr "Parça Bildirimleri"
#: plugin/builtin/integration/part_notifications.py:22
msgid "Notify users about part changes"
-msgstr ""
+msgstr "Kullanıcılara parça değişikliklerini bildir"
#: plugin/builtin/integration/part_notifications.py:27
msgid "Send notifications"
-msgstr ""
+msgstr "Bildirim gönder"
#: plugin/builtin/integration/part_notifications.py:28
msgid "Send notifications for part changes to subscribed users"
-msgstr ""
+msgstr "Takip eden kullanıcılara parça değişiklikleri için bildirim gönder"
#: plugin/builtin/integration/part_notifications.py:45
msgid "Changed part notification"
-msgstr ""
+msgstr "Değişen parça bildirimi"
#: plugin/builtin/integration/part_notifications.py:55
#, python-brace-format
msgid "The part `{part.name}` has been triggered with a `{part_action}` event"
-msgstr ""
+msgstr "`{part.name}` parçası, `{part_action}` olayı ile tetiklenmiştir"
#: plugin/builtin/labels/inventree_label.py:23
msgid "InvenTree PDF label printer"
-msgstr ""
+msgstr "InvenTree PDF etiket yazıcı"
#: plugin/builtin/labels/inventree_label.py:24
msgid "Provides native support for printing PDF labels"
-msgstr ""
+msgstr "PDF etiketleri yazdırmak için yerleşik destek sağlar"
#: plugin/builtin/labels/inventree_label.py:32
#: plugin/builtin/labels/label_sheet.py:78
msgid "Debug mode"
-msgstr ""
+msgstr "Hata ayıklama modu"
#: plugin/builtin/labels/inventree_label.py:33
#: plugin/builtin/labels/label_sheet.py:79
msgid "Enable debug mode - returns raw HTML instead of PDF"
-msgstr ""
+msgstr "Hata ayıklama modunu etkinleştir - PDF yerine ham HTML döndürür"
#: plugin/builtin/labels/inventree_machine.py:61
msgid "InvenTree machine label printer"
-msgstr ""
+msgstr "InvenTree cihaz etiket yazıcısı"
#: plugin/builtin/labels/inventree_machine.py:62
msgid "Provides support for printing using a machine"
-msgstr ""
+msgstr "Bir cihaz aracılığıyla yazdırma desteği sunar"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
-msgstr ""
+msgstr "son kullanılan"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
-msgstr ""
+msgstr "Seçenekler"
#: plugin/builtin/labels/label_sheet.py:30
msgid "Page size for the label sheet"
-msgstr ""
+msgstr "Etiket sayfasının boyutu"
#: plugin/builtin/labels/label_sheet.py:35
msgid "Skip Labels"
-msgstr ""
+msgstr "Etiketleri Atla"
#: plugin/builtin/labels/label_sheet.py:36
msgid "Skip this number of labels when printing label sheets"
-msgstr ""
+msgstr "Etiket sayfası yazdırılırken atlanacak etiket sayısı"
#: plugin/builtin/labels/label_sheet.py:43
msgid "Border"
-msgstr ""
+msgstr "Kenarlık"
#: plugin/builtin/labels/label_sheet.py:44
msgid "Print a border around each label"
-msgstr ""
+msgstr "Her etiketin etrafına kenarlık ekle"
#: plugin/builtin/labels/label_sheet.py:49 report/models.py:387
msgid "Landscape"
-msgstr ""
+msgstr "Yatay"
#: plugin/builtin/labels/label_sheet.py:50
msgid "Print the label sheet in landscape mode"
-msgstr ""
+msgstr "Etiket sayfasını yatay olarak yazdır"
#: plugin/builtin/labels/label_sheet.py:55
msgid "Page Margin"
-msgstr ""
+msgstr "Sayfa Kenar Boşluğu"
#: plugin/builtin/labels/label_sheet.py:56
msgid "Margin around the page in mm"
-msgstr ""
+msgstr "Sayfanın kenar boşluğu (mm)"
#: plugin/builtin/labels/label_sheet.py:69
msgid "InvenTree Label Sheet Printer"
-msgstr ""
+msgstr "InvenTree Etiket Sayfası Yazıcısı"
#: plugin/builtin/labels/label_sheet.py:70
msgid "Arrays multiple labels onto a single sheet"
-msgstr ""
+msgstr "Birden fazla etiketi tek bir sayfaya dizer"
#: plugin/builtin/labels/label_sheet.py:122
msgid "Label is too large for page size"
-msgstr ""
+msgstr "Etiket bu sayfa boyutu için çok büyük"
#: plugin/builtin/labels/label_sheet.py:161
msgid "No labels were generated"
-msgstr ""
+msgstr "Hiç etiket oluşturulmadı"
#: plugin/builtin/suppliers/digikey.py:17
msgid "Supplier Integration - DigiKey"
-msgstr ""
+msgstr "Tedarikçi Entegrasyonu - DigiKey"
#: plugin/builtin/suppliers/digikey.py:18
msgid "Provides support for scanning DigiKey barcodes"
-msgstr ""
+msgstr "DigiKey barkodları taraması için destek sağlar"
#: plugin/builtin/suppliers/digikey.py:27
msgid "The Supplier which acts as 'DigiKey'"
-msgstr ""
+msgstr "'DigiKey' rolünü üstlenen tedarikçi"
#: plugin/builtin/suppliers/lcsc.py:19
msgid "Supplier Integration - LCSC"
-msgstr ""
+msgstr "Tedarikçi Entegrasyonu - LCSC"
#: plugin/builtin/suppliers/lcsc.py:20
msgid "Provides support for scanning LCSC barcodes"
-msgstr ""
+msgstr "LCSC barkodları taraması için destek sağlar"
#: plugin/builtin/suppliers/lcsc.py:28
msgid "The Supplier which acts as 'LCSC'"
-msgstr ""
+msgstr "'LCSC' rolünü üstlenen tedarikçi"
#: plugin/builtin/suppliers/mouser.py:17
msgid "Supplier Integration - Mouser"
-msgstr ""
+msgstr "Tedarikçi Entegrasyonu - Mouser"
#: plugin/builtin/suppliers/mouser.py:18
msgid "Provides support for scanning Mouser barcodes"
-msgstr ""
+msgstr "Mouser barkodları taraması için destek sağlar"
#: plugin/builtin/suppliers/mouser.py:26
msgid "The Supplier which acts as 'Mouser'"
-msgstr ""
+msgstr "'Mouser' rolünü üstlenen tedarikçi"
#: plugin/builtin/suppliers/tme.py:19
msgid "Supplier Integration - TME"
-msgstr ""
+msgstr "Tedarikçi Entegrasyonu - TME"
#: plugin/builtin/suppliers/tme.py:20
msgid "Provides support for scanning TME barcodes"
-msgstr ""
+msgstr "TME barkodları taraması için destek sağlar"
#: plugin/builtin/suppliers/tme.py:28
msgid "The Supplier which acts as 'TME'"
-msgstr ""
+msgstr "'TME' rolünü üstlenen tedarikçi"
#: plugin/installer.py:240 plugin/installer.py:320
msgid "Only staff users can administer plugins"
-msgstr ""
+msgstr "Eklentileri yalnızca yetkili personel yönetebilir"
#: plugin/installer.py:243
msgid "Plugin installation is disabled"
-msgstr ""
+msgstr "Eklenti kurulumu devre dışı bırakıldı"
#: plugin/installer.py:280
msgid "Installed plugin successfully"
-msgstr ""
+msgstr "Eklenti kurulumu başarılı"
#: plugin/installer.py:285
#, python-brace-format
msgid "Installed plugin into {path}"
-msgstr ""
+msgstr "Eklenti {path} yoluna kuruldu"
#: plugin/installer.py:311
msgid "Plugin was not found in registry"
-msgstr ""
+msgstr "Eklenti kayıt defterinde bulunamadı"
#: plugin/installer.py:314
msgid "Plugin is not a packaged plugin"
-msgstr ""
+msgstr "Eklenti paketlenmiş bir eklenti değildir"
#: plugin/installer.py:317
msgid "Plugin package name not found"
-msgstr ""
+msgstr "Eklenti paketi adı bulunamadı"
#: plugin/installer.py:337
msgid "Plugin uninstalling is disabled"
-msgstr ""
+msgstr "Eklenti kaldırma devre dışı bırakıldı"
#: plugin/installer.py:341
msgid "Plugin cannot be uninstalled as it is currently active"
-msgstr ""
+msgstr "Bu eklenti şu an aktif olduğundan kaldırılamaz"
#: plugin/installer.py:347
msgid "Plugin cannot be uninstalled as it is mandatory"
-msgstr ""
+msgstr "Eklenti zorunlu olduğu için kaldırılamaz"
#: plugin/installer.py:352
msgid "Plugin cannot be uninstalled as it is a sample plugin"
-msgstr ""
+msgstr "Eklenti örnek bir eklenti olduğu için kaldırılamaz"
#: plugin/installer.py:357
msgid "Plugin cannot be uninstalled as it is a built-in plugin"
-msgstr ""
+msgstr "Eklenti yerleşik bir eklenti olduğu için kaldırılamaz"
#: plugin/installer.py:361
msgid "Plugin is not installed"
-msgstr ""
+msgstr "Eklenti kurulu değil"
#: plugin/installer.py:379
msgid "Plugin installation not found"
-msgstr ""
+msgstr "Eklenti kurulumu bulunamadı"
#: plugin/installer.py:395
msgid "Uninstalled plugin successfully"
-msgstr ""
+msgstr "Eklenti başarıyla kaldırıldı"
#: plugin/models.py:39
msgid "Plugin Configuration"
-msgstr ""
+msgstr "Eklenti Yapılandırma"
#: plugin/models.py:40
msgid "Plugin Configurations"
-msgstr ""
+msgstr "Eklenti Yapılandırmaları"
#: plugin/models.py:47
msgid "Key of plugin"
-msgstr ""
+msgstr "Eklentinin anahtarı"
#: plugin/models.py:55
msgid "PluginName of the plugin"
-msgstr ""
+msgstr "Eklentinin adı"
#: plugin/models.py:62 plugin/serializers.py:119
msgid "Package Name"
-msgstr ""
+msgstr "Paket Adı"
#: plugin/models.py:64
msgid "Name of the installed package, if the plugin was installed via PIP"
-msgstr ""
+msgstr "Eklenti PIP aracılığıyla yüklendiyse, yüklenen paketin adı"
#: plugin/models.py:69
msgid "Is the plugin active"
-msgstr ""
+msgstr "Eklenti aktif mi"
#: plugin/models.py:176
msgid "Sample plugin"
-msgstr ""
+msgstr "Örnek eklenti"
#: plugin/models.py:184
msgid "Builtin Plugin"
-msgstr ""
+msgstr "Yerleşik Eklenti"
#: plugin/models.py:192
msgid "Mandatory Plugin"
-msgstr ""
+msgstr "Zorunlu Eklenti"
#: plugin/models.py:210
msgid "Package Plugin"
-msgstr ""
+msgstr "Paket Eklenti"
#: plugin/models.py:301 plugin/models.py:347
msgid "Plugin"
-msgstr ""
+msgstr "Eklenti"
#: plugin/plugin.py:386
msgid "No author found"
-msgstr ""
+msgstr "Yazar bulunamadı"
#: plugin/registry.py:774
#, python-brace-format
msgid "Plugin '{p}' is not compatible with the current InvenTree version {v}"
-msgstr ""
+msgstr "'{p}' eklentisi, şu anki InvenTree sürümü {v} ile uyumlu değildir"
#: plugin/registry.py:777
#, python-brace-format
msgid "Plugin requires at least version {v}"
-msgstr ""
+msgstr "Eklenti en az {v} sürümünü gerektirir"
#: plugin/registry.py:779
#, python-brace-format
msgid "Plugin requires at most version {v}"
-msgstr ""
+msgstr "Eklenti en fazla {v} sürümünü gerektirir"
#: plugin/samples/integration/sample.py:52
msgid "User Setting 1"
-msgstr ""
+msgstr "Kullanıcı Ayarı 1"
#: plugin/samples/integration/sample.py:53
msgid "A user setting that can be changed by the user"
-msgstr ""
+msgstr "Kullanıcı tarafından değiştirilebilen bir kullanıcı ayarı"
#: plugin/samples/integration/sample.py:57
msgid "User Setting 2"
-msgstr ""
+msgstr "Kullanıcı Ayarı 2"
#: plugin/samples/integration/sample.py:58
msgid "Another user setting"
-msgstr ""
+msgstr "Başka bir kullanıcı ayarı"
#: plugin/samples/integration/sample.py:63
msgid "User Setting 3"
-msgstr ""
+msgstr "Kullanıcı Ayarı 3"
#: plugin/samples/integration/sample.py:64
msgid "A user setting with choices"
-msgstr ""
+msgstr "Seçenekli bir kullanıcı ayarı"
#: plugin/samples/integration/sample.py:72
msgid "Enable PO"
-msgstr ""
+msgstr "PO'yu Etkinleştir"
#: plugin/samples/integration/sample.py:73
msgid "Enable PO functionality in InvenTree interface"
-msgstr ""
+msgstr "InvenTree arayüzünde PO işlevselliğini etkinleştir"
#: plugin/samples/integration/sample.py:78
msgid "API Key"
-msgstr ""
+msgstr "API Anahtarı"
#: plugin/samples/integration/sample.py:79
msgid "Key required for accessing external API"
-msgstr ""
+msgstr "Harici API erişimi için gerekli anahtar"
#: plugin/samples/integration/sample.py:83
msgid "Numerical"
-msgstr ""
+msgstr "Sayısal"
#: plugin/samples/integration/sample.py:84
msgid "A numerical setting"
-msgstr ""
+msgstr "Sayısal bir ayar"
#: plugin/samples/integration/sample.py:90
msgid "Choice Setting"
-msgstr ""
+msgstr "Seçenekli Ayar"
#: plugin/samples/integration/sample.py:91
msgid "A setting with multiple choices"
-msgstr ""
+msgstr "Birden fazla seçeneği olan bir ayar"
#: plugin/samples/integration/sample_currency_exchange.py:15
msgid "Sample currency exchange plugin"
-msgstr ""
+msgstr "Örnek döviz kuru eklentisi"
#: plugin/samples/integration/sample_currency_exchange.py:18
msgid "InvenTree Contributors"
-msgstr ""
+msgstr "InvenTree Katkıda Bulunanlar"
#: plugin/samples/integration/user_interface_sample.py:27
msgid "Enable Part Panels"
-msgstr ""
+msgstr "Parça Panelerini Etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:28
msgid "Enable custom panels for Part views"
-msgstr ""
+msgstr "Parça görünümleri için özel panelleri etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:33
msgid "Enable Purchase Order Panels"
-msgstr ""
+msgstr "Satın Alma Sipariş Panellerini Etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:34
msgid "Enable custom panels for Purchase Order views"
-msgstr ""
+msgstr "Satın alma siparişi görünümleri için özel panelleri etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:39
msgid "Enable Broken Panels"
-msgstr ""
+msgstr "Bozuk Panelleri Etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:40
msgid "Enable broken panels for testing"
-msgstr ""
+msgstr "Test için kırık panelleri etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:45
msgid "Enable Dynamic Panel"
-msgstr ""
+msgstr "Dinamik Paneli Etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:46
msgid "Enable dynamic panels for testing"
-msgstr ""
+msgstr "Test için dinamik panelleri etkinleştir"
#: plugin/samples/integration/user_interface_sample.py:114
msgid "Part Panel"
-msgstr ""
+msgstr "Parça Paneli"
#: plugin/samples/integration/user_interface_sample.py:149
msgid "Broken Dashboard Item"
-msgstr ""
+msgstr "Bozuk Pano Kartı"
#: plugin/samples/integration/user_interface_sample.py:151
msgid "This is a broken dashboard item - it will not render!"
-msgstr ""
+msgstr "Bu bozuk pano kartı görüntülenemiyor!"
#: plugin/samples/integration/user_interface_sample.py:157
msgid "Sample Dashboard Item"
-msgstr ""
+msgstr "Örnek Kontrol Paneli Kartı"
#: plugin/samples/integration/user_interface_sample.py:159
msgid "This is a sample dashboard item. It renders a simple string of HTML content."
-msgstr ""
+msgstr "Bu, örnek bir pano kartıdır. Basit bir HTML içeriği dizesi görüntüler."
#: plugin/samples/integration/user_interface_sample.py:165
msgid "Context Dashboard Item"
-msgstr ""
+msgstr "Bağlamsal Pano Kartı"
#: plugin/samples/integration/user_interface_sample.py:179
msgid "Admin Dashboard Item"
-msgstr ""
+msgstr "Yönetici Pano Kartı"
#: plugin/samples/integration/user_interface_sample.py:180
msgid "This is an admin-only dashboard item."
-msgstr ""
+msgstr "Bu, yalnızca yöneticilerin kullanabileceği bir pano kartıdır."
#: plugin/serializers.py:86
msgid "Source File"
-msgstr ""
+msgstr "Kaynak Dosyası"
#: plugin/serializers.py:87
msgid "Path to the source file for admin integration"
-msgstr ""
+msgstr "Yönetici entegrasyonu için kaynak dosya yolu"
#: plugin/serializers.py:94
msgid "Optional context data for the admin integration"
-msgstr ""
+msgstr "Yönetici entegrasyonu için isteğe bağlı bağlam verileri"
#: plugin/serializers.py:110
msgid "Source URL"
-msgstr ""
+msgstr "Kaynak URL"
#: plugin/serializers.py:112
msgid "Source for the package - this can be a custom registry or a VCS path"
-msgstr ""
+msgstr "Paketin kaynağı - bu, özel bir kayıt defteri veya bir VCS yolu olabilir"
#: plugin/serializers.py:121
msgid "Name for the Plugin Package - can also contain a version indicator"
-msgstr ""
+msgstr "Eklenti Paketi Adı - sürüm göstergesi de içerebilir"
#: plugin/serializers.py:128
msgid "Version"
-msgstr ""
+msgstr "Sürüm"
#: plugin/serializers.py:130
msgid "Version specifier for the plugin. Leave blank for latest version."
-msgstr ""
+msgstr "Eklenti için sürüm belirleyici. En son sürüm için boş bırakın."
#: plugin/serializers.py:135
msgid "Confirm plugin installation"
-msgstr ""
+msgstr "Eklenti kurulumunu onaylayın"
#: plugin/serializers.py:137
msgid "This will install this plugin now into the current instance. The instance will go into maintenance."
-msgstr ""
+msgstr "Bu, eklentiyi mevcut örneğe şimdi yükleyecektir. Örnek bakım moduna geçecektir."
#: plugin/serializers.py:150
msgid "Installation not confirmed"
-msgstr ""
+msgstr "Kurulum onaylanmadı"
#: plugin/serializers.py:152
msgid "Either packagename of URL must be provided"
-msgstr ""
+msgstr "Paket adı veya URL'den biri belirtilmelidir"
#: plugin/serializers.py:188
msgid "Full reload"
-msgstr ""
+msgstr "Tam yeniden yükleme"
#: plugin/serializers.py:189
msgid "Perform a full reload of the plugin registry"
-msgstr ""
+msgstr "Eklenti kayıt defterini tamamen yeniden yükle"
#: plugin/serializers.py:195
msgid "Force reload"
-msgstr ""
+msgstr "Yeniden yüklemeye zorla"
#: plugin/serializers.py:197
msgid "Force a reload of the plugin registry, even if it is already loaded"
-msgstr ""
+msgstr "Eklenti kayıt defterini, zaten yüklenmiş olsa bile yeniden yüklemeye zorla"
#: plugin/serializers.py:204
msgid "Collect plugins"
-msgstr ""
+msgstr "Eklentileri topla"
#: plugin/serializers.py:205
msgid "Collect plugins and add them to the registry"
-msgstr ""
+msgstr "Eklentileri topla ve kayıt defterine ekle"
#: plugin/serializers.py:233
msgid "Activate Plugin"
-msgstr ""
+msgstr "Eklentiyi Aktifleştir"
#: plugin/serializers.py:234
msgid "Activate this plugin"
-msgstr ""
+msgstr "Bu eklentiyi aktifleştir"
#: plugin/serializers.py:243
msgid "Mandatory plugin cannot be deactivated"
-msgstr ""
+msgstr "Zorunlu eklenti pasifleştirilemez"
#: plugin/serializers.py:261
msgid "Delete configuration"
-msgstr ""
+msgstr "Yapılandırmayı sil"
#: plugin/serializers.py:262
msgid "Delete the plugin configuration from the database"
-msgstr ""
+msgstr "Eklenti yapılandırmasını veritabanından sil"
#: plugin/serializers.py:293
msgid "The user for which this setting applies"
-msgstr ""
+msgstr "Bu ayarların uygulanacağı kullanıcı"
#: report/api.py:44 report/serializers.py:102 report/serializers.py:152
msgid "Items"
-msgstr ""
+msgstr "Kalemler"
#: report/api.py:115
msgid "Plugin not found"
-msgstr ""
+msgstr "Eklenti bulunamadı"
#: report/api.py:117
msgid "Plugin does not support label printing"
-msgstr ""
+msgstr "Eklenti, etiket yazdırmayı desteklemiyor"
#: report/api.py:165
msgid "Invalid label dimensions"
-msgstr ""
+msgstr "Geçersiz etiket boyutları"
#: report/api.py:183 report/api.py:267
msgid "No valid items provided to template"
-msgstr ""
+msgstr "Şablona geçerli öge sağlanmadı"
#: report/helpers.py:43
msgid "A4"
-msgstr ""
+msgstr "A4"
#: report/helpers.py:44
msgid "A3"
-msgstr ""
+msgstr "A3"
#: report/helpers.py:45
msgid "Legal"
@@ -7852,7 +7852,7 @@ msgstr ""
#: report/models.py:128
msgid "Template file with this name already exists"
-msgstr ""
+msgstr "Aynı isimde bir şablon zaten mevcut"
#: report/models.py:217
msgid "Template name"
@@ -7860,19 +7860,19 @@ msgstr "Şablon adı"
#: report/models.py:223
msgid "Template description"
-msgstr ""
+msgstr "Şablon açıklaması"
#: report/models.py:229
msgid "Revision number (auto-increments)"
-msgstr ""
+msgstr "Revizyon numarası (otomatik artar)"
#: report/models.py:235
msgid "Attach to Model on Print"
-msgstr ""
+msgstr "Yazdırmada Modele Ekle"
#: report/models.py:237
msgid "Save report output as an attachment against linked model instance when printing"
-msgstr ""
+msgstr "Yazdırırken rapor çıktısını bağlantılı model örneğine ek olarak kaydet"
#: report/models.py:281
msgid "Filename Pattern"
@@ -7880,15 +7880,15 @@ msgstr "Dosya Adı Deseni"
#: report/models.py:282
msgid "Pattern for generating filenames"
-msgstr ""
+msgstr "Dosya adları oluşturmak için desen"
#: report/models.py:287
msgid "Template is enabled"
-msgstr ""
+msgstr "Şablon etkinleştirildi"
#: report/models.py:294
msgid "Target model type for template"
-msgstr ""
+msgstr "Şablon için hedef model türü"
#: report/models.py:314
msgid "Filters"
@@ -7896,48 +7896,48 @@ msgstr "Filtreler"
#: report/models.py:315
msgid "Template query filters (comma-separated list of key=value pairs)"
-msgstr ""
+msgstr "Şablon sorgu filtreleri (virgülle ayrılmış anahtar=değer çiftleri listesi)"
#: report/models.py:374 report/models.py:670
msgid "Template file"
-msgstr ""
+msgstr "Şablon dosyası"
#: report/models.py:382
msgid "Page size for PDF reports"
-msgstr ""
+msgstr "PDF raporları için sayfa boyutu"
#: report/models.py:388
msgid "Render report in landscape orientation"
-msgstr ""
+msgstr "Raporu yatay yönde işle"
#: report/models.py:393
msgid "Merge"
-msgstr ""
+msgstr "Birleştir"
#: report/models.py:394
msgid "Render a single report against selected items"
-msgstr ""
+msgstr "Seçili ögeler için tek bir rapor oluştur"
#: report/models.py:449
#, python-brace-format
msgid "Report generated from template {self.name}"
-msgstr ""
+msgstr "{self.name} şablonundan oluşturulan rapor"
#: report/models.py:546 report/models.py:585 report/models.py:586
msgid "Template syntax error"
-msgstr ""
+msgstr "Şablon sözdizimi hatası"
#: report/models.py:553 report/models.py:592
msgid "Error rendering report"
-msgstr ""
+msgstr "Rapor işleme hatası"
#: report/models.py:612
msgid "Error generating report"
-msgstr ""
+msgstr "Rapor oluşturma hatası"
#: report/models.py:644
msgid "Error merging report outputs"
-msgstr ""
+msgstr "Rapor çıktılarını birleştirme hatası"
#: report/models.py:676
msgid "Width [mm]"
@@ -7957,70 +7957,70 @@ msgstr "Etiket yüksekliği mm olarak belirtilmeli"
#: report/models.py:789
msgid "Error printing labels"
-msgstr ""
+msgstr "Etiket yazdırma hatası"
#: report/models.py:808
msgid "Snippet"
-msgstr ""
+msgstr "Parçacık"
#: report/models.py:809
msgid "Report snippet file"
-msgstr ""
+msgstr "Rapor parçacık dosyası"
#: report/models.py:816
msgid "Snippet file description"
-msgstr ""
+msgstr "Parçacık dosyası açıklaması"
#: report/models.py:834
msgid "Asset"
-msgstr ""
+msgstr "Kaynak Dosyası"
#: report/models.py:835
msgid "Report asset file"
-msgstr ""
+msgstr "Rapor kaynak dosyası"
#: report/models.py:842
msgid "Asset file description"
-msgstr ""
+msgstr "Kaynak dosyası açıklaması"
#: report/serializers.py:95
msgid "Select report template"
-msgstr ""
+msgstr "Rapor şablonu seç"
#: report/serializers.py:103 report/serializers.py:153
msgid "List of item primary keys to include in the report"
-msgstr ""
+msgstr "Rapora dahil edilecek öge birincil anahtarlarının listesi"
#: report/serializers.py:136
msgid "Select label template"
-msgstr ""
+msgstr "Etiket Şablonu Seç"
#: report/serializers.py:144
msgid "Printing Plugin"
-msgstr ""
+msgstr "Yazdırma Eklentisi"
#: report/serializers.py:145
msgid "Select plugin to use for label printing"
-msgstr ""
+msgstr "Etiket yazdırma için kullanılacak eklentiyi seç"
#: report/templates/label/part_label.html:31
#: report/templates/label/stockitem_qr.html:21
#: report/templates/label/stocklocation_qr.html:20
msgid "QR Code"
-msgstr ""
+msgstr "QR Kod"
#: report/templates/label/part_label_code128.html:31
#: report/templates/label/stocklocation_qr_and_text.html:31
msgid "QR code"
-msgstr ""
+msgstr "QR kod"
#: report/templates/report/inventree_bill_of_materials_report.html:100
msgid "Bill of Materials"
-msgstr ""
+msgstr "Ürün Ağacı"
#: report/templates/report/inventree_bill_of_materials_report.html:133
msgid "Materials needed"
-msgstr ""
+msgstr "Gerekli Malzemeler"
#: report/templates/report/inventree_build_order_report.html:98
#: report/templates/report/inventree_purchase_order_report.html:47
@@ -8031,11 +8031,11 @@ msgstr ""
#: report/templates/report/inventree_test_report.html:84
#: report/templates/report/inventree_test_report.html:162
msgid "Part image"
-msgstr ""
+msgstr "Parça görseli"
#: report/templates/report/inventree_build_order_report.html:121
msgid "Issued"
-msgstr ""
+msgstr "Düzenlendi"
#: report/templates/report/inventree_build_order_report.html:146
msgid "Required For"
@@ -8043,43 +8043,43 @@ msgstr "İçin Gerekli Olan"
#: report/templates/report/inventree_build_order_report.html:152
msgid "Issued By"
-msgstr "Veren"
+msgstr "Düzenleyen"
#: report/templates/report/inventree_purchase_order_report.html:15
msgid "Supplier was deleted"
-msgstr ""
+msgstr "Tedarikçi silindi"
#: report/templates/report/inventree_purchase_order_report.html:22
msgid "Order Details"
-msgstr ""
+msgstr "Sipariş Ayrıntıları"
#: report/templates/report/inventree_purchase_order_report.html:37
#: report/templates/report/inventree_sales_order_report.html:30
msgid "Unit Price"
-msgstr ""
+msgstr "Birim Fiyat"
#: report/templates/report/inventree_purchase_order_report.html:62
#: report/templates/report/inventree_return_order_report.html:48
#: report/templates/report/inventree_sales_order_report.html:55
msgid "Extra Line Items"
-msgstr ""
+msgstr "Ek Kalemler"
#: report/templates/report/inventree_purchase_order_report.html:79
#: report/templates/report/inventree_sales_order_report.html:72
msgid "Total"
-msgstr ""
+msgstr "Toplam"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Seri Numara"
#: report/templates/report/inventree_sales_order_shipment_report.html:23
msgid "Allocations"
-msgstr ""
+msgstr "Tahsisler"
#: report/templates/report/inventree_sales_order_shipment_report.html:47
#: templates/email/stale_stock_notification.html:20
@@ -8088,18 +8088,18 @@ msgstr "Toplu"
#: report/templates/report/inventree_stock_location_report.html:97
msgid "Stock location items"
-msgstr ""
+msgstr "Stok konumu ögeleri"
#: report/templates/report/inventree_stock_report_merge.html:21
#: report/templates/report/inventree_test_report.html:21
msgid "Stock Item Test Report"
-msgstr ""
+msgstr "Stok Kalemi Test Raporu"
#: report/templates/report/inventree_stock_report_merge.html:97
#: report/templates/report/inventree_test_report.html:153
#: stock/serializers.py:626
msgid "Installed Items"
-msgstr ""
+msgstr "Takılı Kalemler"
#: report/templates/report/inventree_stock_report_merge.html:111
#: report/templates/report/inventree_test_report.html:167
@@ -8108,75 +8108,75 @@ msgstr "Seri No"
#: report/templates/report/inventree_test_report.html:97
msgid "Test Results"
-msgstr ""
+msgstr "Test Sonuçları"
#: report/templates/report/inventree_test_report.html:102
msgid "Test"
-msgstr ""
+msgstr "Test"
#: report/templates/report/inventree_test_report.html:129
msgid "Pass"
-msgstr ""
+msgstr "Geçti"
#: report/templates/report/inventree_test_report.html:131
msgid "Fail"
-msgstr ""
+msgstr "Kaldı"
#: report/templates/report/inventree_test_report.html:138
msgid "No result (required)"
-msgstr ""
+msgstr "Sonuç yok (gerekli)"
#: report/templates/report/inventree_test_report.html:140
msgid "No result"
-msgstr ""
+msgstr "Sonuç yok"
#: report/templatetags/report.py:169
msgid "Asset file does not exist"
-msgstr ""
+msgstr "Kaynak dosyası mevcut değil"
#: report/templatetags/report.py:226 report/templatetags/report.py:302
msgid "Image file not found"
-msgstr ""
+msgstr "Görsel dosyası bulunumadı"
#: report/templatetags/report.py:327
msgid "part_image tag requires a Part instance"
-msgstr ""
+msgstr "part_image etiketi bir parça örneği gerektirir"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
-msgstr ""
+msgstr "company_image etiketi bir şirket örneği gerektirir"
#: stock/api.py:288
msgid "Filter by location depth"
-msgstr ""
+msgstr "Konum derinliğine göre filtrele"
#: stock/api.py:308
msgid "Filter by top-level locations"
-msgstr ""
+msgstr "Üst seviye konumlara göre filtrele"
#: stock/api.py:323
msgid "Include sub-locations in filtered results"
-msgstr ""
+msgstr "Filtrelenmiş sonuçlara alt konumları dahil et"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
-msgstr ""
+msgstr "Üst Konum"
#: stock/api.py:345
msgid "Filter by parent location"
-msgstr ""
+msgstr "Üst konuma göre filtrele"
#: stock/api.py:605
msgid "Part name (case insensitive)"
-msgstr ""
+msgstr "Parça adı (büyük/küçük harf duyarlı değildir)"
#: stock/api.py:611
msgid "Part name contains (case insensitive)"
-msgstr ""
+msgstr "Parça adı şunu içerir (büyük/küçük harf duyarlı değildir)"
#: stock/api.py:617
msgid "Part name (regex)"
-msgstr ""
+msgstr "Parça adı (regex)"
#: stock/api.py:622
msgid "Part IPN (case insensitive)"
@@ -8192,23 +8192,23 @@ msgstr ""
#: stock/api.py:646
msgid "Minimum stock"
-msgstr ""
+msgstr "Minimum stok"
#: stock/api.py:650
msgid "Maximum stock"
-msgstr ""
+msgstr "Maksimum stok"
#: stock/api.py:653
msgid "Status Code"
-msgstr ""
+msgstr "Durum Kodu"
#: stock/api.py:693
msgid "External Location"
-msgstr ""
+msgstr "Harici Konum"
#: stock/api.py:792
msgid "Consumed by Build Order"
-msgstr ""
+msgstr "Üretim Emrine göre Tüketilenler"
#: stock/api.py:802
msgid "Installed in other stock item"
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Stok Konumu"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Stok Konumları"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
-msgstr ""
+msgstr "Bu, harici bir stok konumudur"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
-msgstr ""
+msgstr "Konum türü"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
-msgstr ""
+msgstr "Bu konumun stok konumu türü"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
-msgstr ""
+msgstr "Bazı stok kalemleri zaten bu stok konumunda bulunduğundan, bu stok konumunu yapısal hale getiremezsiniz!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
-msgstr ""
+msgstr "{field} mevcut değil"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
-msgstr ""
+msgstr "Parça belirtilmelidir"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
-msgstr ""
+msgstr "Stok kalemleri yapısal stok konumlarına yerleştirilemez!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
-msgstr ""
+msgstr "Sanal parçalar için stok kalemi oluşturulamaz"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
-msgstr ""
+msgstr "Parça türü ('{self.supplier_part.part}'), {self.part} olmalıdır"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Seri numarası olan ögenin miktarı bir olmalı"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Miktar birden büyük ise seri numarası ayarlanamaz"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
-msgstr ""
+msgstr "Öge kendisine ait olamaz"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
-msgstr ""
+msgstr "is_building=True ise ögenin bir üretim referansı olmalıdır"
+
+#: stock/models.py:987
+msgid "Build reference does not point to the same part object"
+msgstr "Üretim referansı aynı parça nesnesini göstermiyor"
#: stock/models.py:1001
-msgid "Build reference does not point to the same part object"
-msgstr ""
-
-#: stock/models.py:1015
msgid "Parent Stock Item"
msgstr "Üst Stok Kalemi"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
-msgstr ""
+msgstr "Temel parça"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
-msgstr "Bu stok kalemi için tedarikçi parçası seçin"
+msgstr "Bu stok kalemiyle eşleşen bir tedarikçi parçası seçin"
+
+#: stock/models.py:1035
+msgid "Where is this stock item located?"
+msgstr "Bu stok kalemi nerede bulunur?"
+
+#: stock/models.py:1043 stock/serializers.py:1613
+msgid "Packaging this stock item is stored in"
+msgstr "Bu stok kaleminin ambalajı şu şekilde saklanmaktadır"
#: stock/models.py:1049
-msgid "Where is this stock item located?"
-msgstr ""
-
-#: stock/models.py:1057 stock/serializers.py:1607
-msgid "Packaging this stock item is stored in"
-msgstr ""
-
-#: stock/models.py:1063
msgid "Installed In"
-msgstr ""
+msgstr "Şuna Takıldı"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
-msgstr ""
+msgstr "Bu öge başka bir ögeye takılı mı?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Bu öge için seri numarası"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Miktar seri numaları ile eşleşmiyor"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Stok kalemi stokta olmadığı için taşınamaz"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,45 +8662,45 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
-msgstr "Sağlayıcı Parça Numarası"
+msgstr "Tedarikçi Parça Numarası"
#: stock/serializers.py:623 users/models.py:187
msgid "Expired"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Alt konumlar"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -8975,7 +8975,7 @@ msgstr "Stok Güncellendi"
#: stock/status_codes.py:65
msgid "Installed into assembly"
-msgstr "Montajda kullanıldı"
+msgstr "Montaj yerine takıldı"
#: stock/status_codes.py:66
msgid "Removed from assembly"
@@ -8983,7 +8983,7 @@ msgstr "Montajdan çıkarıldı"
#: stock/status_codes.py:68
msgid "Installed component item"
-msgstr "Bileşen ögesinde kullanıldı"
+msgstr "Takılan bileşen"
#: stock/status_codes.py:69
msgid "Removed component item"
@@ -8999,7 +8999,7 @@ msgstr "Alt ögeyi ayır"
#: stock/status_codes.py:76
msgid "Merged stock items"
-msgstr "Stok parçalarını birleştir"
+msgstr "Birleştirilen stok kalemleri"
#: stock/status_codes.py:79
msgid "Converted to variant"
@@ -9007,11 +9007,11 @@ msgstr ""
#: stock/status_codes.py:82
msgid "Build order output created"
-msgstr "Yapım emri çıktısı oluşturuldu"
+msgstr "Üretim emri çıktısı oluşturuldu"
#: stock/status_codes.py:83
msgid "Build order output completed"
-msgstr "Yapım emri çıktısı tamamlandı"
+msgstr "Üretim emri çıktısı tamamlandı"
#: stock/status_codes.py:84
msgid "Build order output rejected"
@@ -9373,93 +9373,93 @@ msgstr ""
#: users/ruleset.py:32
msgid "Purchase Orders"
-msgstr "Satın Alma Emirleri"
+msgstr "Satın Alma Siparişleri"
#: users/ruleset.py:33
msgid "Sales Orders"
-msgstr "Satış Emirleri"
+msgstr "Satış Siparişleri"
#: users/ruleset.py:34
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Kullanıcı Adı"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Adı"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Kullanıcının adı"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Soyadı"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Kullanıcının soyadı"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Kullanıcının e-posta adresi"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Personel"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Bu kullanıcının personel izinleri var mı"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Süper Kullanıcı"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Bu kullanıcı bir süper kullanıcı mı"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
-msgstr "Bu kullanıcı hesabı etkin mi"
+msgstr "Bu kullanıcı hesabı aktif mi"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Kullanıcı hesabınız oluşturulmuştur."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Giriş yapmak için lütfen şifre sıfırlama fonksiyonunu kullanınız"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "InvenTree'ye Hoşgeldiniz"
diff --git a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po
index e16b1afdab..110000e5db 100644
--- a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Ukrainian\n"
"Language: uk_UA\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "Кінцева точка API не знайдена"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "Для масових операцій необхідно надати перелік сутностей або фільтрів"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "Сутності необхідно надати списком"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "Надано неправильний список сутностей"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "Фільтри необхідно надавати у вигляді словника"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "Надано неправильні фільтри"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "Немає сутностей що відповідають наданим критеріям"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr ""
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "У користувача немає дозволу на перегляд цієї моделі"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Не вдалося перетворити {original} на {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Невірна кількість"
@@ -112,13 +112,13 @@ msgstr "Введіть дату"
msgid "Invalid decimal value"
msgstr "Неправильне десяткове значення"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Нотатки"
@@ -171,35 +171,35 @@ msgstr "Видаліть HTML тег з цього значення"
msgid "Data contains prohibited markdown content"
msgstr "Дані містять заборонений вміст у форматі Markdown"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Помилка підключення"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Сервер відправив некоректний код статусу"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Відбулося виключення"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Сервер повернув невірне значення Content-Length"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Розмір зображення занадто великий"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Розмір зображення перевищує максимально дозволений розмір"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Віддалений сервер повернув пусту відповідь"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr ""
@@ -207,11 +207,11 @@ msgstr ""
msgid "Log in to the app"
msgstr "Авторизуватися в додатку"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Електронна пошта"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "Необхідно увімкнути двофакторну автентифікацію, перед тим як робити будь-що інше."
@@ -255,133 +255,133 @@ msgstr ""
msgid "Reference number is too large"
msgstr ""
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr ""
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Назва"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Опис"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Опис (опціонально)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Шлях"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr ""
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Примітки в Markdown (опціонально)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr ""
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr ""
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr ""
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr ""
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr ""
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Помилка сервера"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr ""
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Зображення"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr ""
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr ""
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr ""
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr ""
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr ""
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr ""
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr ""
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr ""
msgid "Not a valid currency code"
msgstr ""
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr ""
@@ -562,21 +562,21 @@ msgstr ""
msgid "Parent Build"
msgstr ""
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Деталь"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr ""
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr ""
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Розхідний матеріал"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr ""
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Збірка"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr ""
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Тестуємо"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr ""
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr ""
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Доступно"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr ""
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr ""
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Місце"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr ""
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr ""
msgid "SalesOrder to which this build is allocated"
msgstr ""
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr ""
@@ -857,17 +857,17 @@ msgstr ""
msgid "Build status code"
msgstr ""
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr ""
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr ""
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr ""
@@ -887,7 +887,7 @@ msgstr ""
msgid "Target date for build completion. Build will be overdue after this date."
msgstr ""
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr ""
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr ""
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr ""
@@ -913,12 +913,12 @@ msgstr ""
msgid "User or group responsible for this build order"
msgstr ""
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr ""
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr ""
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr ""
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr ""
@@ -960,7 +960,7 @@ msgstr ""
msgid "A build order has been completed"
msgstr ""
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr ""
@@ -976,23 +976,23 @@ msgstr ""
msgid "Build output does not match Build Order"
msgstr ""
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr ""
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr ""
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr ""
@@ -1001,18 +1001,18 @@ msgstr ""
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr ""
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr ""
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr ""
msgid "Quantity"
msgstr "Кількість"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr ""
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr ""
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr ""
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr ""
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr ""
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr ""
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr ""
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr ""
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr ""
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr ""
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr ""
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr ""
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr ""
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr ""
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr ""
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr ""
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr ""
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr ""
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr ""
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr ""
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr ""
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr ""
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr ""
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr ""
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr ""
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr ""
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr ""
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr ""
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr ""
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr ""
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr ""
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr ""
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr ""
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr ""
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr ""
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr ""
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr ""
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr ""
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr ""
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr ""
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr ""
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr ""
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr ""
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr ""
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr ""
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr ""
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr ""
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr ""
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr ""
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr ""
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr ""
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr ""
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr ""
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr ""
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr ""
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr ""
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr ""
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr ""
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr ""
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr ""
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr ""
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr ""
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr ""
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr ""
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr ""
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr ""
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr ""
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr ""
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr ""
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr ""
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr ""
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr ""
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr ""
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr ""
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr ""
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr ""
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr ""
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr ""
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr ""
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr ""
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr ""
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr ""
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr ""
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr ""
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr ""
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr ""
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Дозволити варіанти"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr ""
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "У виробництві"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr ""
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr ""
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr ""
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr ""
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr ""
msgid "Build order {bo} is now overdue"
msgstr ""
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr ""
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr ""
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr ""
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr ""
@@ -1530,7 +1522,11 @@ msgstr ""
msgid "No plugin"
msgstr ""
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr ""
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr ""
@@ -1558,7 +1554,7 @@ msgstr ""
msgid "User or group responsible for this project"
msgstr ""
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr ""
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Користувач"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr ""
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Ціна"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr ""
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr ""
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr ""
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr ""
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr ""
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr ""
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr ""
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr ""
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr ""
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr ""
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr ""
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr ""
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr ""
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr ""
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr ""
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr ""
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr ""
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr ""
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr ""
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr ""
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr ""
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr ""
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Назва"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Посилання"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr ""
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr ""
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr ""
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr ""
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr ""
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr ""
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr ""
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr ""
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr ""
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr ""
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr ""
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr ""
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr ""
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr ""
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr ""
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr ""
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Коментар"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "Дата завантаження"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "Дата завантаження файлу"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "Розмір файлу"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "Розмір файлу в байтах"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr ""
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "Етикетка"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "Колір"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "Модель"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "Список вибору"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "Заблоковано"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr ""
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr ""
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr ""
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr ""
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr ""
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr ""
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr ""
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr ""
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr ""
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr ""
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr ""
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Прапорець"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr ""
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr ""
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr ""
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr ""
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr ""
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Шаблон"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Дані"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr ""
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr ""
msgid "Note"
msgstr "Примітка"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr ""
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr ""
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr ""
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr ""
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr ""
msgid "A order that is assigned to you was canceled"
msgstr ""
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr ""
@@ -2351,93 +2347,101 @@ msgstr ""
msgid "Items have been received against a return order"
msgstr ""
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr ""
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr ""
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr ""
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr ""
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr ""
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr ""
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr ""
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr ""
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr ""
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr ""
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr ""
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr ""
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr ""
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr ""
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr ""
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr ""
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr ""
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr ""
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr ""
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr ""
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr ""
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr ""
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr ""
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr ""
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr ""
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr ""
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr ""
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr ""
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr ""
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr ""
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr ""
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr ""
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr ""
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr ""
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr ""
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr ""
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr ""
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr ""
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr ""
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr ""
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr ""
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr ""
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr ""
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr ""
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr ""
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr ""
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr ""
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr ""
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr ""
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr ""
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr ""
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr ""
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr ""
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr ""
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr ""
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr ""
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr ""
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr ""
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr ""
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr ""
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr ""
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr ""
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr ""
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr ""
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr ""
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr ""
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr ""
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr ""
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr ""
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr ""
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Компонент"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr ""
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr ""
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr ""
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Доступний для продажу"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr ""
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr ""
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Віртуальний"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr ""
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Показати пов'язані деталі"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr ""
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr ""
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr ""
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr ""
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr ""
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr ""
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr ""
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr ""
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr ""
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr ""
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr ""
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr ""
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr ""
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr ""
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr ""
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr ""
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr ""
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr ""
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr ""
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr ""
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr ""
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr ""
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr ""
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr ""
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr ""
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr ""
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr ""
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr ""
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr ""
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr ""
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr ""
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr ""
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr ""
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr ""
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr ""
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr ""
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr ""
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr ""
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr ""
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr ""
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr ""
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr ""
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr ""
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr ""
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr ""
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr ""
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr ""
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr ""
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr ""
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr ""
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr ""
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr ""
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr ""
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr ""
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr ""
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr ""
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr ""
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr ""
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr ""
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr ""
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr ""
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr ""
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr ""
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr ""
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr ""
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr ""
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr ""
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr ""
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr ""
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr ""
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr ""
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr ""
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr ""
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr ""
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr ""
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr ""
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr ""
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr ""
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr ""
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr ""
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "Чи призначені групи користувачеві повинні бути видалені, якщо вони не є резервним сервером IdP. Відключення цього налаштування може спричинити проблеми безпеки"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr ""
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr ""
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr ""
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr ""
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr ""
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr ""
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr ""
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr ""
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr ""
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr ""
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr ""
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr ""
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr ""
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr ""
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr ""
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr ""
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr ""
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr ""
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr ""
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr ""
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr ""
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr ""
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr ""
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr ""
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr ""
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr ""
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr ""
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr ""
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr ""
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr ""
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "Позиція активна"
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "Позиція постачальника активна"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "Внутрішня позиція активна"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Виробник"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr ""
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr ""
msgid "Contact email address"
msgstr ""
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr ""
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr ""
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr ""
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr ""
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr ""
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr ""
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr ""
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr ""
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr ""
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr ""
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr ""
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr ""
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr ""
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr ""
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr ""
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr ""
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr ""
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr ""
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr ""
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr ""
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr ""
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr ""
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr ""
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr ""
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Позиція виробника"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Базова позиція"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Обрати позицію"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr ""
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr ""
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr ""
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr ""
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr ""
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr ""
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr ""
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr ""
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr ""
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr ""
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr ""
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr ""
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr ""
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "Базова вартість"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Мінімальний платіж (напр. комісія за збереження)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr ""
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr ""
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr ""
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr ""
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr ""
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr ""
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr ""
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr ""
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr ""
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr ""
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "В наявності"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Дійсно"
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr ""
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr ""
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr ""
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr ""
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Внутрішній компонент"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr ""
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr ""
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr ""
msgid "Sales Order"
msgstr ""
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr ""
msgid "Total price for this order"
msgstr ""
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr ""
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr ""
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr ""
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr ""
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr ""
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr ""
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr ""
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr ""
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr ""
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr ""
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr ""
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr ""
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr ""
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr ""
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr ""
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr ""
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr ""
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr ""
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr ""
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr ""
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr ""
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr ""
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr ""
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr ""
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr ""
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr ""
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr ""
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr ""
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr ""
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr ""
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr ""
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr ""
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr ""
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr ""
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr ""
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr ""
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr ""
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr ""
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr ""
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr ""
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr ""
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr ""
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr ""
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr ""
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr ""
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr ""
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr ""
msgid "User who checked this shipment"
msgstr ""
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr ""
@@ -5164,7 +5164,11 @@ msgstr ""
msgid "Allocation quantity cannot exceed stock quantity"
msgstr ""
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr ""
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr ""
@@ -5172,7 +5176,7 @@ msgstr ""
msgid "Sales order does not match shipment"
msgstr ""
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr ""
@@ -5256,247 +5260,247 @@ msgstr ""
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr ""
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr ""
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr ""
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr ""
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr ""
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr ""
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr ""
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr ""
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr ""
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr ""
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr ""
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr ""
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr ""
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr ""
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr ""
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr ""
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr ""
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr ""
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr ""
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr ""
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr ""
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr ""
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr ""
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr ""
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr ""
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr ""
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr ""
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr ""
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr ""
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr ""
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr ""
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr ""
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr ""
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr ""
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr ""
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr ""
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr ""
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr ""
@@ -5656,7 +5660,7 @@ msgstr ""
msgid "Part Categories"
msgstr ""
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr ""
@@ -5664,7 +5668,7 @@ msgstr ""
msgid "Default location for parts in this category"
msgstr ""
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr ""
@@ -5680,12 +5684,12 @@ msgstr ""
msgid "Default keywords for parts in this category"
msgstr ""
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr ""
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr ""
@@ -5693,655 +5697,655 @@ msgstr ""
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr ""
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr ""
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr ""
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Позиції"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "Неможливо видалити цю позицію, оскільки вона заблокована"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "Неможливо видалити цю позицію, оскільки вона ще активна"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "Неможливо видалити цю позицію, бо вона використовується у збірці"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr ""
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr ""
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr ""
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr ""
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr ""
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr ""
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr ""
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Назва позиції"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Це шаблон"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Ця позиція є шаблоном?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr ""
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr ""
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Опис позиції (опціонально)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr ""
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr ""
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr ""
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr ""
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Ревізія"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "Ревізія"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr ""
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr ""
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr ""
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr ""
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr ""
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Мінімальний запас"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Мінімально дозволений рівень запасів"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Одиниці виміру для цієї позиції"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Чи можна побудувати цю позицію з інших компонентів?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr ""
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr ""
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr ""
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr ""
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr ""
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr ""
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr ""
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr ""
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr ""
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr ""
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr ""
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr ""
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr ""
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr ""
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr ""
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr ""
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr ""
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr ""
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr ""
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr ""
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr ""
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr ""
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr ""
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr ""
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr ""
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr ""
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr ""
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr ""
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr ""
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr ""
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr ""
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr ""
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr ""
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr ""
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr ""
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr ""
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr ""
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr ""
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr ""
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr ""
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr ""
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr ""
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr ""
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr ""
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr ""
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr ""
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr ""
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr ""
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr ""
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr ""
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr ""
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Дата"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr ""
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr ""
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr ""
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr ""
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr ""
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Тестова назва"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr ""
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr ""
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr ""
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr ""
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr ""
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr ""
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr ""
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr ""
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr ""
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr ""
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr ""
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr ""
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr ""
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr ""
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr ""
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr ""
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr ""
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr ""
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr ""
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr ""
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr ""
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr ""
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr ""
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr ""
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr ""
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr ""
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr ""
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr ""
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr ""
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr ""
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Позиція 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Позиція 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr ""
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr ""
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr ""
@@ -6465,203 +6469,199 @@ msgstr ""
msgid "Supplier part matching this SKU already exists"
msgstr ""
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr ""
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr ""
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr ""
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr ""
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr ""
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr ""
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr ""
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Початковий запас"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr ""
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr ""
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr ""
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr ""
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr ""
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Наявне зображення"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr ""
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr ""
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr ""
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr ""
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Мінімальна ціна"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr ""
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr ""
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Максимальна ціна"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr ""
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr ""
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr ""
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr ""
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr ""
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr ""
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr ""
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr ""
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr ""
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr ""
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr ""
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr ""
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr ""
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr ""
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr ""
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr ""
@@ -6732,108 +6732,108 @@ msgstr ""
msgid "No matching action found"
msgstr ""
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr ""
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr ""
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr ""
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr ""
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr ""
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr ""
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr ""
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr ""
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr ""
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr ""
@@ -8142,7 +8142,7 @@ msgstr ""
msgid "part_image tag requires a Part instance"
msgstr ""
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr ""
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr ""
msgid "Default icon for all locations that have no icon set (optional)"
msgstr ""
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr ""
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr ""
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr ""
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr ""
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr ""
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr ""
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr ""
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr ""
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr ""
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr ""
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr ""
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr ""
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr ""
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr ""
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr ""
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr ""
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr ""
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr ""
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr ""
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr ""
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr ""
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr ""
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr ""
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr ""
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr ""
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr ""
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr ""
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr ""
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr ""
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr ""
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr ""
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr ""
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr ""
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr ""
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr ""
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr ""
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr ""
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr ""
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr ""
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr ""
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr ""
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr ""
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr ""
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr ""
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr ""
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr ""
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr ""
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr ""
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr ""
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr ""
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr ""
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr ""
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr ""
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr ""
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr ""
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr ""
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr ""
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr ""
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr ""
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr ""
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr ""
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr ""
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr ""
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr ""
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr ""
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr ""
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr ""
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr ""
@@ -8805,103 +8805,103 @@ msgstr ""
msgid "No stock items selected"
msgstr ""
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr ""
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr ""
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr ""
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr ""
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr ""
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr ""
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr ""
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr ""
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr ""
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr ""
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr ""
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr ""
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr ""
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr ""
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr ""
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr ""
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr ""
msgid "Return Orders"
msgstr ""
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr ""
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Ім`я"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr ""
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Прізвище"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr ""
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Адреса електронної пошти користувача"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Персонал"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr ""
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr ""
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr ""
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr ""
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr ""
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr ""
diff --git a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po
index 88b816d41b..f9e840a81d 100644
--- a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po
+++ b/src/backend/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: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:38\n"
"Last-Translator: \n"
"Language-Team: Vietnamese\n"
"Language: vi_VN\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "API endpoint không tồn tại"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr ""
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr ""
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr ""
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr ""
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr ""
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr ""
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr ""
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "Không có dữ liệu được cung cấp"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "Người dùng không được phân quyền xem mẫu này"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "Không thể chuyển đổi {original} sang {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "Số lượng cung cấp không hợp lệ"
@@ -112,13 +112,13 @@ msgstr "Nhập ngày"
msgid "Invalid decimal value"
msgstr ""
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "Ghi chú"
@@ -171,35 +171,35 @@ msgstr "Xóa thẻ HTML từ giá trị này"
msgid "Data contains prohibited markdown content"
msgstr ""
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "Lỗi kết nối"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "Máy chủ phản hồi với mã trạng thái không hợp lệ"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "Xảy ra Exception"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "Máy chủ đã phản hồi với giá trị Content-Length không hợp lệ"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "Hình ảnh quá lớn"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "Tải xuống hình ảnh vượt quá kích thước tối đa"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "Máy chủ trả về phản hồi trống"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "URL được cung cấp không phải là tệp hình ảnh hợp lệ"
@@ -207,11 +207,11 @@ msgstr "URL được cung cấp không phải là tệp hình ảnh hợp lệ"
msgid "Log in to the app"
msgstr ""
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "Email"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr ""
@@ -255,133 +255,133 @@ msgstr "Tham chiếu phải phù hợp với mẫu yêu cầu"
msgid "Reference number is too large"
msgstr "Số tham chiếu quá lớn"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "Lựa chọn sai"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "Tên"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "Mô tả"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "Mô tả (tùy chọn)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "Đường dẫn"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "Tên trùng lặp không thể tồn tại trong cùng cấp thư mục"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Ghi chú markdown (không bắt buộc)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "Dữ liệu mã vạch"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "Dữ liệu mã vạch của bên thứ ba"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "Dữ liệu băm mã vạch"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "Chuỗi băm duy nhất của dữ liệu mã vạch"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "Mã vạch đã tồn tại"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr ""
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr ""
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "Lỗi máy chủ"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "Lỗi đã được ghi lại bởi máy chủ."
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "Hình ảnh"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "Phải là một số hợp lệ"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "Tiền tệ"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "Chọn tiền tệ trong các tùy chọn đang có"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "Giá trị không hợp lệ"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "Hình ảnh từ xa"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "URL của tệp hình ảnh bên ngoài"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "Chức năng tải hình ảnh từ URL bên ngoài không được bật"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr ""
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "Đơn vị vật lý không hợp lệ"
msgid "Not a valid currency code"
msgstr "Mã tiền tệ không hợp lệ"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "Trạng thái đặt hàng"
@@ -562,21 +562,21 @@ msgstr "Trạng thái đặt hàng"
msgid "Parent Build"
msgstr "Phiên bản cha"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr ""
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr ""
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr ""
msgid "Part"
msgstr "Nguyên liệu"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "Danh mục"
@@ -666,80 +666,80 @@ msgstr ""
msgid "Exclude Tree"
msgstr ""
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "Bạn dựng phải được hủy bỏ trước khi có thể xóa được"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "Vật tư tiêu hao"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "Tuỳ chọn"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "Lắp ráp"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "Đã theo dõi"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "Có thể kiểm tra"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr ""
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "Đã cấp phát"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "Đã dùng"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "Có sẵn"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "Bật đơn hàng"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "Tạo đơn hàng"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "Địa điểm"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr ""
msgid "Build Order Reference"
msgstr "Tham chiếu đơn đặt bản dựng"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "Tham chiếu đơn đặt bản dựng"
msgid "SalesOrder to which this build is allocated"
msgstr "Đơn đặt bán hàng với bản dựng này đã được phân bổ"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "Địa điểm nguồn"
@@ -857,17 +857,17 @@ msgstr "Trnạg thái bản dựng"
msgid "Build status code"
msgstr "Mã trạng thái bản dựng"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "Mã lô hàng"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "Mã lô cho đầu ra bản dựng này"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "Ngày tạo"
@@ -887,7 +887,7 @@ msgstr "Ngày hoàn thành mục tiêu"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "Ngày mục tiêu để hoàn thành bản dựng. Bản dựng sẽ bị quá hạn sau ngày này."
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "Ngày hoàn thành"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "Người dùng người đã được phân công cho đơn đặt bản dựng này"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "Chịu trách nhiệm"
@@ -913,12 +913,12 @@ msgstr "Chịu trách nhiệm"
msgid "User or group responsible for this build order"
msgstr "Người dùng hoặc nhóm có trách nhiệm với đơn đặt bản dựng này"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "Liên kết bên ngoài"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "Liên kết đến URL bên ngoài"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "Độ quan trọng của đơn đặt bản dựng"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "Mã dự án"
@@ -960,7 +960,7 @@ msgstr "Đơn đặt bản dựng {build} đã được hoàn thành"
msgid "A build order has been completed"
msgstr "Một đơn đặt bản dựng đã được hoàn thành"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "Số sê-ri phải được cung cấp cho hàng hoá có thể theo dõi"
@@ -976,23 +976,23 @@ msgstr "Đầu ra bản dựng đã được hoàn thiện"
msgid "Build output does not match Build Order"
msgstr "Đầu ra bản dựng không phù hợp với đơn đặt bản dựng"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "Số lượng phải lớn hơn 0"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "Số lượng không thể lớn hơn số lượng đầu ra"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr ""
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "Tạo đầu ra {serial} chưa vượt qua tất cả các bài kiểm tra"
@@ -1001,18 +1001,18 @@ msgstr "Tạo đầu ra {serial} chưa vượt qua tất cả các bài kiểm t
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "Tạo mục đơn hàng"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "Dựng đối tượng"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "Dựng đối tượng"
msgid "Quantity"
msgstr "Số lượng"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "Yêu cầu số lượng để dựng đơn đặt"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr ""
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "Xây dựng mục phải xác định đầu ra, bởi vì sản phẩm chủ được đánh dấu là có thể theo dõi"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "Hàng trong kho đã chọn không phù hợp với đường BOM"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "Số lượng phải là 1 cho kho sê ri"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "Số lượng được phân bổ ({q}) không thể vượt quá số lượng có trong kho ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "Kho hàng đã bị phân bổ quá đà"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "Số lượng phân bổ phải lớn hơn 0"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "Số lượng phải là 1 cho kho sê ri"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "Hàng trong kho đã chọn không phù hợp với đường BOM"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr ""
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "Kho hàng"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "Kho hàng gốc"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "Số lượng kho hàng cần chỉ định để xây dựng"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "Cài đặt vào"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "Kho hàng đích"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "Tạo cấp"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "Tên sản phẩm"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "Nhãn mã dự án"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "Đầu ra bản dựng"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "Đầu ra xây dựng không hợp với bản dựng cha"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "Đầu ra sản phẩm không phù hợp với bản dựng đơn đặt hàng"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "Đầu ra bản dựng này đã được hoàn thành"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "Đầu ra bản dựng này chưa được phân bổ đầy đủ"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "Điền số lượng cho đầu ra bản dựng"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "Số lượng nguyên dương cần phải điền cho sản phẩm có thể theo dõi"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "Cần nhập số lượng nguyên dương, bởi vì hóa đơn vật liệu chứa sản phẩm có thể theo dõi"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "Số sê-ri"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "Nhập vào số sêri cho đầu ra bản dựng"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "Vị trí tồn kho cho sản phẩm"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "Số sêri tự cấp"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "Tự động cấp số seri phù hợp cho hàng hóa được yêu cầu"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "Số sêri sau đây đã tồn tại hoặc không hợp lệ"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "Danh sách đầu ra bản dựng phải được cung cấp"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "Vị trí kho cho đầu ra phế phẩm"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "Hủy phân bổ"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "Hủy bất kỳ phân kho nào cho đầu ra phế phẩm"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "Lý do loại bỏ đầu ra bản dựng"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "Vị trí cho đầu ra bản dựng hoàn thiện"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "Chấp nhận phân kho dang dở"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "Hoàn hiện đầu ra nếu kho chưa được phân bổ hết chỗ trống"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "Xử lý phân bổ kho hàng"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "Tiêu thụ bất kỳ hàng tồn kho nào đã được phân bổ cho dự án này."
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "Xóa toàn bộ đầu ra chưa hoàn thành"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "Xóa bất kỳ đầu ra bản dựng nào chưa được hoàn thành"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "Chưa được cấp phép"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "Chấp nhận trạng thái tiêu hao bởi đơn đặt bản dựng này"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "Phân bổ trước khi hoàn thiện đơn đặt bản dựng này"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "Kho quá tải"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "Bạn muốn thế nào để xử lý hàng trong kho được gán thừa cho đơn đặt bản dựng"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "Một vài hàng hóa đã được phân bổ quá thừa"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "Chấp nhận chưa phân bổ được"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "Chấp nhận hàng hóa không được phân bổ đầy đủ vào đơn đặt bản dựng này"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "Kho được yêu cầu chưa được phân bổ hết không gian"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "Chấp nhận không hoàn thành"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "Chấp nhận số yêu cầu của đầu ra bản dựng chưa được hoàn thành"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "Số lượng bản dựng được yêu cầu chưa được hoàn thành"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "Tạo đơn hàng có các đơn hàng đang mở"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "Tạo đơn hàng phải ở trạng thái sản xuất."
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "Đơn đặt bản dựng có đầu ra chưa hoàn thiện"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "Lộ giới"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "Đầu ra bản dựng"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "Đầu ra bản dựng phải chỉ đến bản dựng tương ứng"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "Mục chi tiết bản dựng"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part phải trỏ đến phần tương tự của đơn đặt bản dựng"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "Hàng hóa phải trong kho"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "Số lượng có sẵn ({q}) đã bị vượt quá"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "Đầu ra bản dựng phải được xác định cho việc phân sản phẩm được theo dõi"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "Đầu ra bản dựng không thể chỉ định cho việc phân sản phẩm chưa được theo dõi"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "Hàng hóa phân bổ phải được cung cấp"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "Vị trí kho nơi sản phẩm được lấy ra (để trống để lấy từ bất kỳ vị trí nào)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "Ngoại trừ vị trí"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "Không bao gồm hàng trong kho từ vị trí đã chọn này"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "Kho trao đổi"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "Hàng trong kho thuộc nhiều vị trí có thể dùng thay thế được cho nhau"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "Kho thay thế"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "Cho phép phân kho sản phẩm thay thế"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "Mục tùy chọn"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "Phân bổ các mục hóa đơn vật liệu tùy chọn đến đơn đặt bản dựng"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "Không thể khởi động tác vụ phân bổ tự động."
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "BOM liên quan"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "ID hàng hoá BOM"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "Tên hàng hoá BOM"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr ""
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "Sản phẩm nhà cung cấp"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "Số lượng đã phân bổ"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "Tạo liên quan"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "Tên danh mục hàng hoá"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "Có thể theo dõi"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "Được kế thừa"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "Cho phép biến thể"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "Mục BOM"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "Đang sản xuất"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr ""
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "Kho ngoài"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "Số hàng tồn"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "Kho hàng thay thế"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "Hàng tồn kho có sẵn"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr ""
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr ""
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr ""
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr ""
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr ""
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr ""
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr ""
@@ -1498,19 +1490,19 @@ msgstr "Đơn đặt bản dựng quá hạn"
msgid "Build order {bo} is now overdue"
msgstr "Đặt hàng bản dựng {bo} đang quá hạn"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "Đường dẫn"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "File"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "Không có quyền xoá file đính kèm"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "Không có quyền xoá file đính kèm"
@@ -1530,7 +1522,11 @@ msgstr "Mã tiền tệ không đúng"
msgid "No plugin"
msgstr "Không phần mở rộng"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "Nhãn mã dự án"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "Đã cập nhật"
@@ -1558,7 +1554,7 @@ msgstr "Mô tả dự án"
msgid "User or group responsible for this project"
msgstr "Người dùng hoặc nhóm có trách nhiệm với dự án này"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr ""
@@ -1590,550 +1586,550 @@ msgstr ""
msgid "Key string must be unique"
msgstr "Chuỗi khóa phải duy nhất"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "Người dùng"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "Số lượng giá phá vỡ"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "Giá"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "Đơn vị giá theo số lượng cụ thể"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "Đầu mối"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "Đầu mối tại điểm webhook được nhận"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "Tên của webhook này"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "Hoạt động"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "Webhook có hoạt động không"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "Chữ ký số"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "Chữ ký số để truy cập"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "Bí mật"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "Mã bí mật dùng chung cho HMAC"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "Mã Tin nhắn"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "Định danh duy nhất cho tin nhắn này"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "Máy chủ"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "Mãy chủ từ tin nhắn này đã được nhận"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "Đầu mục"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "Đầu mục tin nhắn"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "Thân"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "Thân tin nhắn này"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "Đầu mối của tin nhắn này đã nhận được"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "Làm việc vào"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "Công việc trong tin nhắn này đã kết thúc?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "Mã"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "Tiêu đề"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "Liên kết"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "Đã công bố"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "Tác giả"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "Tóm tắt"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "Đọc"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "Tin này đã được đọc?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "Tệp ảnh"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr ""
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr ""
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr ""
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr ""
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "Tên đơn vị phải là một định danh hợp lệ"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "Tên đơn vị"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "Biểu tượng"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "Biểu tượng đơn vị tùy chọn"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "Định nghĩa"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "Định nghĩa đơn vị"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "Đính kèm"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "Tập tin bị thiếu"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "Thiếu liên kết bên ngoài"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr ""
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr ""
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "Chọn file đính kèm"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "Bình luận"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr ""
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr ""
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr ""
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr ""
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr ""
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr ""
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr ""
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr ""
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr ""
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr ""
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr ""
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "Giá trị"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr ""
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr ""
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr ""
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr ""
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr ""
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr ""
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr ""
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr ""
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr ""
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr ""
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr ""
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr ""
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr ""
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr ""
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr ""
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr ""
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr ""
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr ""
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr ""
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr ""
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr ""
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr ""
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr ""
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr ""
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr ""
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr ""
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr ""
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr ""
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "Đã tạo"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr ""
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "Cập nhật lần cuối"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr ""
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr ""
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr ""
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr ""
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr ""
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr ""
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr ""
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr ""
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "Mẫu tham số"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "Tham số hộp kiểm tra không thể có đơn vị"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "Tham số hộp kiểm tra không thể có lựa chọn"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "Lựa chọn phải duy nhất"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "Tên tham số mẫu phải là duy nhất"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "Tên tham số"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "Đơn vị"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "Đơn vị vật lý cho tham số này"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "Mô tả tham số"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "Ô lựa chọn"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "Tham số này có phải là hộp kiểm tra?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "Lựa chọn"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "Lựa chọn hợp lệ từ tham số này (ngăn cách bằng dấu phẩy)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr ""
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "Đã bật"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "Lựa chọn sai cho giá trị tham số"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "Mẫu"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "Dữ liệu"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "Giá trị tham số"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "Giá trị tham số"
msgid "Note"
msgstr "Ghi chú"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "Trường ghi chú tùy chọn"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr ""
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr ""
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr ""
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr ""
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr ""
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr ""
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "Ngữ cảnh"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr ""
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr ""
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr ""
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "Kết quả"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr ""
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr ""
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr ""
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr ""
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr ""
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr ""
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr ""
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr ""
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr ""
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr ""
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr ""
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr ""
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr ""
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr ""
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr ""
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr ""
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr ""
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr ""
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr ""
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr ""
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr ""
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr ""
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr ""
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr ""
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "Khóa"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr ""
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr ""
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr ""
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr ""
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr ""
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr ""
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} đã bị hủy"
msgid "A order that is assigned to you was canceled"
msgstr "Một đơn đặt từng được phân công cho bạn đã bị hủy bỏ"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "Mục đã nhận"
@@ -2351,93 +2347,101 @@ msgstr "Hàng đã được nhận theo đơn đặt mua"
msgid "Items have been received against a return order"
msgstr "Hàng đã nhận theo đơn hàng trả lại"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr ""
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr ""
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "Đang chạy"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "Công việc chờ xử lý"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "Tác vụ theo lịch"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "Tác vụ thất bại"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "ID tác vụ"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "ID tác vụ duy nhất"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "Khoá"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "Thời gian khóa"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "Tên công việc"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "Chức năng"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "Tên chức năng"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "Đối số"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "Đối số công việc"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "Đối số từ khóa"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "Đối số từ khóa công việc"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "Tên tập tin"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr ""
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr ""
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr ""
@@ -2445,1128 +2449,1132 @@ msgstr ""
msgid "No group"
msgstr "Không có nhóm"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "URL trang web đã bị khóa bởi cấu hình"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "Cần khởi động lại"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "Một thiết lập đã bị thay đổi yêu cầu khởi động lại máy chủ"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "Chuyển dữ liệu chờ xử lý"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "Số đợt nâng cấp cơ sở dữ liệu chờ xử lý"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr ""
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr ""
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr ""
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr ""
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr ""
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr ""
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "Tên thực thể máy chủ"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "Mô tả chuỗi cho thực thể máy chủ"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "Sử dụng tên thực thể"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "Sử dụng tên thực thể trên thanh tiêu đề"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "Cấm hiển thị `giới thiệu`"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "Chỉ hiển thị cửa sổ `giới thiệu` với siêu người dùng"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "Tên công ty"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "Tên công ty nội bộ"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "URL cơ sở"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "URL cơ sở cho thực thể máy chủ"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "Tiền tệ mặc định"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "Chọn tiền tệ chính khi tính giá"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr ""
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr ""
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "Tần suất cập nhật tiền tệ"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "Mức độ thường xuyên để cập nhật tỉ giá hối đoái (điền 0 để tắt)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "ngày"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "Phần mở rộng cập nhật tiền tệ"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "Phần mở rộng cập nhật tiền tệ được sử dụng"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "Tải về từ URL"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "Cho phép tải ảnh và tệp tin từ xa theo URL bên ngoài"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "Giới hạn kích thước tải xuống"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "Kích thước tải xuống tối đa với hình ảnh từ xa"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "User-agent được dùng để tải xuống theo URL"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "Cho phép ghi đè user-agent được dùng để tải về hình ảnh và tệp tin từ xa theo URL bên ngoài (để trống nghĩa là dùng mặc định)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr ""
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr ""
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "Thời gian kiểm tra bản cập nhật"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "Mức độ thường xuyên để kiểm tra bản cập nhật (điền 0 để tắt)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "Sao lưu tự động"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "Bật tính năng sao lưu tự động cơ sở dữ liệu và tệp tin đa phương tiện"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "Khoảng thời gian sao lưu tự động"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "Xác định số ngày giữa các kỳ sao lưu tự động"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "Khoảng thời gian xóa tác vụ"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "Kết quả tác vụ chạy ngầm sẽ bị xóa sau số ngày được chỉ định"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "Khoảng thời gian xóa nhật ký lỗi"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "Nhật ký lỗi sẽ bị xóa sau số ngày được chỉ định"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "Khoảng thời gian xóa thông báo"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "Thông báo sẽ bị xóa sau số ngày được chỉ định"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr ""
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr ""
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr ""
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "Hỗ trợ mã vạch"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "Bật hỗ trợ máy quét mã vạch trong giao diện web"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr ""
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr ""
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr ""
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr ""
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "Độ trễ quét mã vạch"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "Thời gian trễ xử lý đầu đọc mã vạch"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "Hỗ trợ mã vạch qua webcam"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "Cho phép quét mã vạch qua webcam bên trong trình duyệt"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr ""
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr ""
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr ""
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr ""
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "Phiên bản Sản phẩm"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "Bật trường phiên bản cho sản phẩm"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr ""
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr ""
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr ""
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr ""
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "Mẫu IPN"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "Mẫu dùng nhanh phổ biến dành cho tìm IPN sản phẩm"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "Cho phép trùng IPN"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "Cho phép nhiều sản phẩm dùng IPN giống nhau"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "Cho phép sửa IPN"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "Cho phép đổi giá trị IPN khi sửa một sản phẩm"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "Sao chép dữ liệu BOM của sản phẩm"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "Sao chép dữ liệu BOM mặc định khi nhân bản 1 sản phẩm"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "Sao chép dữ liệu tham số sản phẩm"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "Sao chép dữ liệu tham số mặc định khi nhân bản 1 sản phẩm"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "Chép thông tin kiểm thử sản phẩm"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "Sao chép dữ liệu kiểm thử mặc định khi nhân bản 1 sản phẩm"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "Sao chéo mẫu tham số danh mục"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "Sao chéo mẫu tham số danh mục khi tạo 1 sản phẩm"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "Sản phẩm là mẫu bởi mặc định"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "Sản phẩm có thể lắp giáp từ thành phần khác theo mặc định"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "Thành phần"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "Sản phẩm có thể được sử dụng mặc định như thành phần phụ"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "Có thể mua"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "Sản phẩm mặc định có thể mua được"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "Có thể bán"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "Sản phẩm mặc định có thể bán được"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "Sản phẩm mặc định có thể theo dõi được"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "Ảo"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "Sản phẩm mặc định là số hóa"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "Hiển thị sản phẩm liên quan"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "Hiện sản phẩm liên quan cho 1 sản phẩm"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "Số liệu tồn kho ban đầu"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "Cho phép tạo tồn kho ban đầu khi thêm 1 sản phẩm mới"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "Dữ liệu nhà cung cấp ban đầu"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "Cho phép tạo dữ liệu nhà cung cấp ban đầu khi thêm 1 sản phẩm mới"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "Định dạng tên sản phẩm hiển thị"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "Định dạng để hiển thị tên sản phẩm"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "Biểu tượng mặc định của danh mục sản phẩm"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "Biểu tượng mặc định của danh mục sản phẩm (để trống nghĩa là không có biểu tượng)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "Vị trí phần thập phân giá bán tối thiểu"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "Số vị trí thập phân tối thiểu cần hiển thị khi tạo dữ liệu giá"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "Vị trí phần thập phân giá bán tối đa"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "Số vị trí thập phân tối đa cần hiển thị khi tạo dữ liệu giá"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "Sử dụng giá bán nhà cung cấp"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "Bao gồm giá phá vỡ cả nhà cung cấp trong tính toán giá tổng thể"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "Ghi đè lịch sử mua hàng"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "Giá đơn hàng đặt mua trước đó ghi đè giá phá vỡ của nhà cung cấp"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "Sử dụng giá hàng hóa trong kho"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "Dùng giá bán từ dữ liệu kho nhập vào thủ công đối với bộ tính toán giá bán"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "Tuổi giá kho hàng"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "Loại trừ hàng hóa trong kho cũ hơn số ngày ngày từ bảng tính giá bán"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "Sử dụng giá biến thể"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "Bao gồm giá biến thể trong bộ tính toán giá tổng thể"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "Chỉ các biến thể hoạt động"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "Chỉ sử dụng sản phẩm biến thể hoạt động để tính toán giá bán biến thể"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr ""
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr ""
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "Tần suất tạo lại giá"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "Số ngày trước khi giá sản phẩm được tự động cập nhật"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "Giá nội bộ"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "Bật giá nội bộ cho sản phẩm"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "Ghi đè giá nội bộ"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "Nếu khả dụng, giá nội bộ ghi đè tính toán khoảng giá"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "Bật in tem nhãn"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "Bật chức năng in tem nhãn từ giao diện web"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "DPI hỉnh ảnh tem nhãn"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "Độ phân giải DPI khi tạo tệp hình ảnh để cung cấp cho plugin in ấn tem nhãn"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "Bật báo cáo"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "Cho phép tạo báo cáo"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "Chế độ gỡ lỗi"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "Tạo báo cáo trong chế độ gỡ lỗi (đầu ra HTML)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr ""
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr ""
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "Khổ giấy"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "Kích thước trang mặc định cho báo cáo PDF"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "Bắt buộc đơn vị tham số"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "Nếu đơn vị được cung cấp, giá trị tham số phải phù hợp với các đơn vị xác định"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "Sê ri toàn cục duy nhất"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "Số sê ri cho hàng trong kho phải là duy nhất trong toàn hệ thống"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "Xóa kho đã hết hàng"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr ""
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "Mẫu sinh mã theo lô"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "Mẫu tạo mã theo lô mặc định cho hàng trong kho"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "Quá hạn trong kho"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "Bật chức năng quá hạn tồn kho"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "Bán kho quá hạn"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "Cho phép bán hàng kho quá hạn"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "Thời gian hàng cũ trong kho"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "Số ngày hàng trong kho được xác định là cũ trước khi quá hạn"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "Dựng kho quá hạn"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "Cho phép xây dựng với kho hàng quá hạn"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "Kiểm soát sở hữu kho"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "Bật chức năng kiểm soát sở hữu kho với địa điểm và hàng trong kho"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "Biểu tượng địa điểm kho mặc định"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "Biểu tượng địa điểm kho hàng mặc định (trống nghĩa là không có biểu tượng)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "Hiển thị hàng hóa đã lắp đặt"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "Hiển thị hàng trong kho đã được lắp đặt trên bảng kho"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr ""
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr ""
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr ""
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr ""
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "Mã tham chiếu đơn đặt bản dựng"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "Mẫu bắt buộc cho để trường tham chiếu đơn đặt bản dựng"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr ""
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr ""
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr ""
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr ""
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr ""
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr ""
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr ""
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr ""
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr ""
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr ""
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr ""
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr ""
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr ""
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr ""
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "Bật đơn hàng trả lại"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "Bật chức năng đơn hàng trả lại trong giao diện người dùng"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "Mẫu tham chiếu đơn hàng trả lại"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr ""
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "Sửa đơn hàng trả lại đã hoàn thành"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "Cho phép sửa đơn hàng trả lại sau khi đã hoàn thành rồi"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "Mẫu tham chiếu đơn đặt hàng"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "Mẫu bắt buộc để tạo trường tham chiếu đơn đặt hàng"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "Vận chuyển mặc định đơn đặt hàng"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "Cho phép tạo vận chuyển mặc định với đơn đặt hàng"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "Sửa đơn đặt hàng đã hoàn thành"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "Cho phép sửa đơn đặt hàng sau khi đã vận chuyển hoặc hoàn thành"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr ""
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr ""
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "Mẫu tham chiếu đơn đặt mua"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "Mẫu bắt buộc cho để trường tham chiếu đơn đặt mua"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "Sửa đơn đặt mua đã hoàn thành"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "Cho phép sửa đơn đặt mua sau khi đã vận chuyển hoặc hoàn thành"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr ""
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr ""
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "Tự động hoàn thành đơn đặt mua"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr ""
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "Bật quên mật khẩu"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "Bật chức năng quên mật khẩu trong trang đăng nhập"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "Bật đăng ký"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "Cho phép người dùng tự đăng ký tại trang đăng nhập"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "Bật SSO"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "Cho phép SSO tại trang đăng nhập"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "Bật đăng ký SSO"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "Cho phép người dùng tự đăng ký SSO tại trang đăng nhập"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr ""
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr ""
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr ""
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr ""
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr ""
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr ""
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr ""
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr ""
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "Yêu cầu email"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "Yêu cầu người dùng cung cấp email để đăng ký"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "Người dùng tự động điền SSO"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "Tự động điền thông tin chi tiết từ dữ liệu tài khoản SSO"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "Thư 2 lần"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "Khi đăng ký sẽ hỏi người dùng hai lần thư điện tử của họ"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "Mật khẩu 2 lần"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "Khi đăng ký sẽ hỏi người dùng hai lần mật khẩu của họ"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "Các tên miền được phép"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "Cấm đăng ký với 1 số tên miền cụ thể (dấu phẩy ngăn cách, bắt đầu với dấu @)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "Nhóm khi đăng ký"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr ""
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "Bắt buộc MFA"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "Người dùng phải sử dụng bảo mật đa nhân tố."
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "Kiểm tra phần mở rộng khi khởi động"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "Kiểm tra toàn bộ phần mở rộng đã được cài đặt khi khởi dộng - bật trong môi trường ảo hóa"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "Kiểm tra cập nhật plugin"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr ""
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "Bật tích hợp URL"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "Bật phần mở rộng để thêm định tuyến URL"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "Bật tích hợp điều hướng"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "Bật phần mở rộng để tích hợp thanh định hướng"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "Bật tích hợp ứng dụng"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "Bật phần mở rộng để thêm ứng dụng"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "Cho phép tích hợp lập lịch"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "Bật phẩn mở rộng để chạy các tác vụ theo lịch"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "Bật tích hợp nguồn cấp sự kiện"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "Bật phần mở rộng để trả lời sự kiện bên trong"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr ""
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr ""
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr ""
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr ""
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr ""
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr ""
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr ""
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr ""
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "Ngoại trừ vị trí bên ngoài"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr ""
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "Giai đoạn kiểm kê tự động"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr ""
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr ""
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr ""
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr ""
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr ""
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "Hiển thị tên đầy đủ của người dùng"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "Hiển thị tên đầy đủ thay vì tên đăng nhập"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr ""
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr ""
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr ""
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr ""
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr ""
msgid "Manufacturer is Active"
msgstr ""
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr ""
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr ""
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr ""
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "Nhà sản xuất"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "Doanh nghiêp"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr ""
@@ -3969,7 +3977,7 @@ msgstr "Số điện thoại liên hệ"
msgid "Contact email address"
msgstr "Địa chỉ email liên hệ"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "Liên hệ"
@@ -4022,255 +4030,247 @@ msgstr ""
msgid "Company Tax ID"
msgstr ""
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "Địa chỉ"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "Địa chỉ"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "Chọn doanh nghiệp"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "Tiêu đề địa chỉ"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "Tiêu đề mô tả mục địa chỉ"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "Địa chỉ chính"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "Đặt làm địa chỉ chính"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "Dòng 1"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "Địa chỉ dòng 1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "Dòng 2"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "Địa chỉ dòng 2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "Mã bưu chính"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "Thành phố/Vùng"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "Mã bưu chính thành phố/vùng"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "Bang/Tỉnh"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "Bang hay tỉnh"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "Quốc gia"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "Địa chỉ quốc gia"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "Ghi chú vận chuyển"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "Ghi chú dành cho chuyển phát nhanh"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "Ghi chú nội bọ chuyển phát nhanh"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "Ghi chú nội bộ sử dụng cho chuyển phát nhanh"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "Liên kết thông tin địa chỉ (bên ngoài)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "Sản phẩm nhà sản xuất"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "Sản phẩm cơ bản"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "Chọn sản phẩm"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "Chọn nhà sản xuất"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr ""
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "Mã số nhà sản xuất"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "URL cho liên kết sản phẩm của nhà sản xuất bên ngoài"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "Mô tả sản phẩm của nhà sản xuất"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "Đơn vị đóng gói phải tương thích với đơn vị sản phẩm cơ bản"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "Đơn vị đóng gói phải lớn hơn không"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "Sản phẩm nhà sản xuất đã liên kết phải tham chiếu với sản phẩm cơ bản tương tự"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "Nhà cung cấp"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "Chọn nhà cung cấp"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "Đơn vị quản lý kho nhà cung cấp"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr ""
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "Chọn sản phẩm của nhà sản xuất"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "URL cho liên kết sản phẩm của nhà cung cấp bên ngoài"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "Mô tả sản phẩm nhà cung cấp"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "chi phí cơ sở"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "Thu phí tối thiểu (vd: phí kho bãi)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "Đóng gói"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "Đóng gói sản phẩm"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "Số lượng gói"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "Tổng số lượng được cung cấp trong một gói đơn. Để trống cho các hàng hóa riêng lẻ."
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "nhiều"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "Đặt hàng nhiều"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "Số lượng có sẵn từ nhà cung cấp"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "Sẵn hàng đã được cập nhật"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "Ngày cập nhật cuối thông tin tồn kho"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr ""
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr ""
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "Tiền tệ mặc định được sử dụng cho nhà cung cấp này"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr ""
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "Còn hàng"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr ""
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr ""
@@ -4418,7 +4418,7 @@ msgstr ""
msgid "Errors"
msgstr ""
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "Hợp lệ"
@@ -4530,7 +4530,7 @@ msgstr ""
msgid "Connected"
msgstr ""
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "Không rõ"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "Tham chiếu đơn đặt"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr ""
@@ -4670,7 +4670,7 @@ msgstr ""
msgid "Has Project Code"
msgstr ""
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "Tạo bởi"
@@ -4710,11 +4710,11 @@ msgstr ""
msgid "Has Pricing"
msgstr ""
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr ""
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr ""
@@ -4722,40 +4722,40 @@ msgstr ""
msgid "External Build Order"
msgstr ""
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "Đặt hàng"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr ""
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "Sản phẩm nội bộ"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr ""
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "Đã hoàn thành"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr ""
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "Đơn hàng"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "Đơn hàng"
msgid "Sales Order"
msgstr "Đơn đặt hàng"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "Tổng tiền"
msgid "Total price for this order"
msgstr "Tổng tiền cho đơn hàng hàng"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "Tiền tệ đơn đặt hàng"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "Tiền tệ cho đơn đặt này (để trống để sử dụng tiền mặc định)"
@@ -4805,240 +4805,240 @@ msgstr ""
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "Mô tả đơn đặt (tùy chọn)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "Mã dự án đã chọn cho đơn đặt hàng này"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "Liên kết đến trang bên ngoài"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr ""
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr ""
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "Ngày mục tiêu"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "Ngày mong muốn giao được hàng. Đơn đặt sẽ quá hạn sau ngày này."
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "Ngày phát hành"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "Ngày đặt hàng đã phát hành"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "Người dùng hoặc nhóm có trách nhiệm với đơn đặt này"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "Đầu mối liên hệ của đơn đặt này"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "Địa chỉ công ty cho đơn đặt này"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "Mã đặt hàng"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "Trạng thái"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "Trạng thái đơn đặt mua"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "Doanh nghiệp từ những hàng hóa đang được đặt mua"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "Tham chiếu nhà cung cấp"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "Mã tham chiếu đơn đặt nhà cung cấp"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "nhận bởi"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "Ngày đặt hàng đã được hoàn thiện"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "Đích đến"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr ""
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "Nhà cung cấp sản phẩm phải trùng với nhà cung cấp PO"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "Mục dòng không phù hợp với đơn đặt mua"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr ""
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "Số lượng phải là số dương"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "Khách hàng"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "Doanh nghiệp từ những hàng hóa đang được bán"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr ""
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "Tham chiếu khách hàng "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "Mã tham chiếu đơn đặt của khách hàng"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "Ngày giao hàng"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "vận chuyển bằng"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr ""
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr ""
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "Những đơn hàng đang mở thì sẽ được đánh dấu là hoàn thành"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "Đơn hàng không thể hoàn thành được vì vận chuyển chưa xong"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr ""
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "Đơn hàng không thể hoàn thành được vì những khoản riêng chưa xong"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr ""
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "Số lượng mặt hàng"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "Tham chiếu khoản riêng"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "Ghi chú khoản riêng"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "Ngày mục tiêu cho khoản riêng này (để trống để sử dụng ngày mục tiêu từ đơn đặt)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "Mô tả khoản riêng (tùy chọn)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "Ngữ cảnh bổ sung"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "Đơn giá"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr ""
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "Sản phẩm nhà cung cấp phải phù hợp với nhà cung cung cấp"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr ""
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr ""
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr ""
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "Sản phẩm nhà cung cấp"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "Đã nhận"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "Số mục đã nhận"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "Giá mua"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "Giá đơn vị mua"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr ""
@@ -5102,8 +5102,8 @@ msgstr "Kiểm tra bởi"
msgid "User who checked this shipment"
msgstr "Người dùng đã kiểm tra vận chuyển này"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "Vận chuyển"
@@ -5164,7 +5164,11 @@ msgstr "Không thể phân bổ hàng hóa vào một dòng mà không có sản
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "Số lượng phân bổ không thể vượt quá số lượng của kho"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "Số lượng phân bổ phải lớn hơn 0"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "Số lượng phải là 1 cho hàng hóa sêri"
@@ -5172,7 +5176,7 @@ msgstr "Số lượng phải là 1 cho hàng hóa sêri"
msgid "Sales order does not match shipment"
msgstr "Đơn bán hàng không phù hợp với vận đơn"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "Vận đơn không phù hợp với đơn bán hàng"
@@ -5256,247 +5260,247 @@ msgstr "Chi phí gắn với hàng trả lại hoặc sửa chữa cho dòng hà
msgid "Return Order Extra Line"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr ""
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr ""
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr ""
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr ""
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr ""
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr ""
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "Mục dòng"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr ""
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr ""
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr ""
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr ""
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "Tên nhà cung cấp"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "Đơn đặt không thể bị hủy"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "Cho phép đơn đặt phải đóng lại cùng với các mục dòng hàng hóa chưa hoàn thành"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "Đơn đặt có dòng hàng hóa chưa hoàn thành"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "Đơn đặt là không được mở"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr ""
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr ""
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "Tiền tệ giá mua"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr ""
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr ""
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr ""
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "Mã sản phẩm nội bộ"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr ""
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "Sản phẩm nhà cung cấp phải được chỉ định"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "Đơn đặt mua phải được chỉ định"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "Nhà cung cấp phải phù hợp với đơn đặt mua"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "Đơn đặt mua phải phù hợp với nhà cung cấp"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "Mục dòng"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "Chọn vị trí đích cho hàng hóa đã nhận"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "Nhập mã lô cho hàng trong kho đang đến"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "Ngày hết hạn"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr ""
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "Nhập số sê ri cho hàng trong kho đang đến"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr ""
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr ""
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "Mã vạch"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "Mã vạch đã quét"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "Mã vạch đã được dùng"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "Dòng hàng hóa phải được cung cấp"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "Vị trí đích phải được chỉ ra"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "Giá trị mã vạch đã cung cấp phải duy nhất"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr ""
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "Vận đơn đã hoàn thành"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "Tiền tệ giá bán"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr ""
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "Chưa cung cấp thông tin vận chuyển"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "Dòng hàng hóa chưa được gắn với đơn đặt này"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "Số lượng phải là số dương"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "Nhập số sê ri để phân bổ"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "Vận đơn đã được chuyển đi"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "Vận đơn không được gắn với đơn đặt này"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "Không tìm thấy số sê ri sau đây"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr ""
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "Dòng riêng biệt đơn hàng trả lại"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "Line item không phù hợp với đơn hàng trả lại"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "Line item đã nhận được"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "Hàng hóa chỉ có thể được nhận theo đơn hàng đang trong tiến trình"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr ""
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "Tiền tệ giá đồng hạng"
@@ -5647,7 +5651,7 @@ msgstr ""
msgid "Uses"
msgstr ""
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "Danh mục sản phẩm"
@@ -5656,7 +5660,7 @@ msgstr "Danh mục sản phẩm"
msgid "Part Categories"
msgstr "Danh mục sản phẩm"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "Điểm bán mặc định"
@@ -5664,7 +5668,7 @@ msgstr "Điểm bán mặc định"
msgid "Default location for parts in this category"
msgstr "Vị trí mặc định cho sản phẩm trong danh mục này"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "Cấu trúc"
@@ -5680,12 +5684,12 @@ msgstr "Từ khóa mặc định"
msgid "Default keywords for parts in this category"
msgstr "Từ khóa mặc định cho sản phẩm trong danh mục này"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "Biểu tượng"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "Biểu tượng (tùy chọn)"
@@ -5693,655 +5697,655 @@ msgstr "Biểu tượng (tùy chọn)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "Bạn không thể thay đổi cấu trúc nhóm sản phẩm này vì một số sản phẩm đã được gắn với nó rồi!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr ""
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "Giá trị mặc định"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "Giá trị tham số mặc định"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "Nguyên liệu"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr ""
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr ""
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr ""
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "Không thể dùng sản phẩm '{self}' trong BOM cho '{parent}' (đệ quy)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "Sản phẩm '{parent}' được dùng trong BOM cho '{self}' (đệ quy)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "IPN phải phù hợp mẫu biểu thức chính quy {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr ""
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr ""
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr ""
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr ""
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr ""
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr ""
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "Hàng trong kho với số sê ri này đã tồn tại"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "IPN trùng lặp không được cho phép trong thiết lập sản phẩm"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr ""
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "Sản phẩm với Tên, IPN và Duyệt lại đã tồn tại."
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "Sản phẩm không thể được phân vào danh mục sản phẩm có cấu trúc!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "Tên sản phẩm"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "Là Mẫu"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "Sản phẩm này có phải là sản phẩm mẫu?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "Đây có phải là 1 biến thể của sản phẩm khác?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "Biến thể của"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "Mô tả (không bắt buộc)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "Từ khóa"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "Từ khóa sản phẩm để cải thiện sự hiện diện trong kết quả tìm kiếm"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "Danh mục sản phẩm"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr ""
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "Số phiên bản hoặc bản duyệt lại sản phẩm"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "Phiên bản"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr ""
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr ""
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "Hàng hóa này sẽ được cất vào đâu?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "Nhà cung ứng mặc định"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "Nhà cung ứng sản phẩm mặc định"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "Hết hạn mặc định"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "Thời gian hết hạn (theo ngày) để nhập kho hàng hóa cho sản phẩm này"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "Kho tối thiểu"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "Cấp độ kho tối thiểu được phép"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "Đơn vị đo cho sản phẩm này"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "Sản phẩm này có thể được dựng từ sản phẩm khác?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "Sản phẩm này có thể dùng để dựng các sản phẩm khác?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "Sản phẩm này có đang theo dõi cho hàng hóa duy nhất?"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr ""
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "Sản phẩm này có thể mua được từ nhà cung ứng bên ngoài?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "Sản phẩm này có thể được bán cho khách hàng?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "Sản phẩm này đang hoạt động?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr ""
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "Đây là sản phẩm ảo, ví dụ như sản phẩm phần mềm hay bản quyền?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr ""
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr ""
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "Giá trị tổng kiểm BOM"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "Giá trị tổng kiểm BOM đã được lưu"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "BOM kiểm tra bởi"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "Ngày kiểm tra BOM"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "Tạo người dùng"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "Trách nhiệm chủ sở hữu cho sản phẩm này"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "Bán nhiều"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "Tiền được dùng để làm đệm tính toán giá bán"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "Chi phí BOM tối thiểu"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "Chi phí thành phần sản phẩm tối thiểu"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "Chi phí BOM tối đa"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "Chi phí thành phần sản phẩm tối đa"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "Chi phí mua vào tối thiểu"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "Chi phí mua vào tối thiểu trong lịch sử"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "Chi phí mua tối đa"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "Chi phí thành phần sản phẩm tối đa trong lịch sử"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "Giá nội bộ tối thiểu"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "Chi phí tối thiểu dựa trên phá vỡ giá nội bộ"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "Giá nội bộ tối đa"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "Chi phí tối đa dựa trên phá vỡ giá nội bộ"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "Giá nhà cung ứng tối thiểu"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "Giá sản phẩm tối thiểu từ nhà cung ứng bên ngoài"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "Giá nhà cung ứng tối đa"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "Giá sản phẩm tối đã từ nhà cung ứng bên ngoài"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "Giá trị biến thể tối thiểu"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "Chi phí tối thiểu của sản phẩm biến thể đã tính"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "Chi phí biến thể tối đa"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "Chi phí tối đa của sản phẩm biến thể đã tính"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "Chi phí tối thiểu"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "Ghi đề chi phí tối thiểu"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "Chi phí tối đa"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "Ghi đề chi phí tối đa"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "Chi phí tối thiểu tính toán tổng thể"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "Chi phí tối đa tính toán tổng thể"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "Giá bán thấp nhất"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "Giá bán tối thiểu dựa trên phá giá"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "Giá bán cao nhất"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "Giá bán cao nhất dựa trên phá giá"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "Chi phí bán hàng tối thiểu"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "Giá bán hàng tối thiểu trong lịch sử"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "Giá bán hàng tối đa"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "Giá bán hàng tối đa trong lịch sử"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "Sản phẩm dành cho kiểm kê"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "Tổng số hàng"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "Số mục kho độc lậo tại thời điểm kiểm kê"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "Tống số kho tại thời điểm kiểm kê"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "Ngày"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "Kiểm kê đã thực hiện"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "Chi phí kho tối thiểu"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "Chi phí kho tối thiểu ước tính của kho đang có"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "Chi phí kho tối đa"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "Chi phí kho tối đa ước tính của kho đang có"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr ""
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr ""
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr ""
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr ""
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr ""
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "Tên kiểm thử"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "Nhập tên cho kiểm thử"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr ""
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr ""
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "Mô tả kiểm thử"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "Nhập mô tả cho kiểm thử này"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr ""
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "Bắt buộc"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "Kiểm thử này bắt buộc phải đạt?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "Giá trị bắt buộc"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "Kiểm thử này yêu cầu 1 giá trị khi thêm một kết quả kiểm thử?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "Yêu cầu đính kèm"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "Kiểm thử này yêu cầu tệp đính kèm khi thêm một kết quả kiểm thử?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr ""
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr ""
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr ""
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "Chọn sản phẩm cha"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "Sản phẩm phụ"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "Chọn sản phẩm được dùng trong BOM"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "Số lượng BOM cho mục BOM này"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "Mục BOM này là tùy chọn"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "Mục BOM này bị tiêu hao (không được theo dõi trong đơn đặt bản dựng)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr ""
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr ""
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr ""
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr ""
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr ""
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr ""
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "Tham chiếu mục BOM"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "Ghi chú mục BOM"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "Giá trị tổng kiểm"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "Giá trị tổng kiểm dòng BOM"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "Đã xác minh"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "Mục BOM này là hợp lệ"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "Nhận thừa hưởng"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "Mục BOM này được thừa kế bởi BOM cho sản phẩm biến thể"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "Hàng trong kho cho sản phẩm biến thể có thể được dùng bởi mục BOM này"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "Số lượng phải là giá trị nguyên dùng cho sản phẩm có thể theo dõi được"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "Sản phẩm phụ phải được chỉ định"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "Sảm phẩm thay thế mục BOM"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "Sản phẩm thay thế không thể giống sản phẩm chủ đạo"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "Hàng hóa BOM cha"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "Sản phẩm thay thế"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "Sản phẩm 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "Sản phẩm 2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "Chọn sản phẩm liên quan"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr ""
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "Không thể tạo mối quan hệ giữa một sản phẩm và chính nó"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "Đã tồn tại mối quan hệ trùng lặp"
@@ -6465,203 +6469,199 @@ msgstr "Mã số nhà sản xuất khớp với MPN này đã tồn tại"
msgid "Supplier part matching this SKU already exists"
msgstr "Mã số nhà cung cấp khớp với SKU này đã tồn tại"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "Tên danh mục"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "Đang dựng"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr ""
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr ""
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "Hàng trong kho"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr ""
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "Nhà cung cấp"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "Tổng số lượng"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr ""
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr ""
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "Nhân bản sản phẩm"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "Sao chép dữ liệu ban đầu từ sản phẩm khác"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "Số liệu kho ban đầu"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "Tạo sản phẩm với số lượng tồn kho ban đầu"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "Thông tin nhà cung cấp"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "Thêm thông tin nhà cung cấp ban đầu cho sản phẩm này"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "Sao chép thông số nhóm hàng"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "Sao chép mẫu tham số từ nhóm sản phẩm được chọn"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "Ảnh hiện có"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "Tên tệp của ảnh sản phẩm hiện hữu"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "Tệp hình ảnh không tồn tại"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "Xác minh toàn bộ hóa đơn vật liệu"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "Có thể dựng"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr ""
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr ""
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr ""
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr ""
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "Giá thấp nhất"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "Giá trị tính toán ghi đè cho giá tối thiểu"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "Tiền tế giá tối thiểu"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "Giá cao nhất"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "Giá trị tính toán ghi đè cho giá tối đa"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "Tiền tế giá tối đa"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "Cập nhật"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "Cập nhật giá cho sản phẩm này"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "Không thể chuyển đổi từ tiền tệ đã cung cấp cho {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "Giá tối thiểu không được lớn hơn giá tối đa"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "Giá tối đa không được nhỏ hơn giá tối thiểu"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr ""
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr ""
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "Chọn sản phẩm để sao chép định mức nguyên vật liệu"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "Xóa dữ liệu đã tồn tại"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "Xóa mục BOM đã tồn tại trước khi sao chép"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "Bao gồm thừa hưởng"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "Bao gồm mục BOM được thừa hưởng từ sản phẩm mẫu"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "Bỏ qua dòng không hợp lệ"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "Bật tùy chọn này để bỏ qua dòng không hợp lệ"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "Sao chép sản phẩm thay thế"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "Sao chép sản phẩm thay thế khi nhân bản hàng hóa BOM"
@@ -6732,108 +6732,108 @@ msgstr "Chưa chỉ ra hành động cụ thể"
msgid "No matching action found"
msgstr "Không tìm thấy chức năng phù hợp"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "Không tìm thấy dữ liệu mã vạch phù hợp"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "Đã tìm thấy dữ liệu mã vạch phù hợp"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr ""
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr ""
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "Mã vạch phù hợp với hàng hóa hiện có"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "Không tìm thấy thông tin sản phẩm phù hợp"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "Không tìm thấy sản phẩm nhà cung cấp phù hợp"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "Tìm thấy nhiều sản phẩm nhà cung cấp phù hợp"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr ""
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "Sản phẩm nhà cung cấp phù hợp"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "Hàng hóa này đã được nhận"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr ""
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr ""
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr ""
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr ""
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr ""
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr ""
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "Kho không đủ hạn mức khả dụng"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr ""
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "Không đủ thông tin"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr ""
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr ""
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "Buộc phải nhập thông tin khác để nhận mục dòng này"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "Mục dòng đơn đặt mua đã nhận"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr ""
@@ -6972,7 +6972,7 @@ msgstr "Cung cấp hỗ trợ gốc cho mã vạch"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr ""
msgid "Automatically issue orders that are backdated"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr ""
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr ""
@@ -7354,11 +7354,11 @@ msgstr ""
msgid "Provides support for printing using a machine"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr ""
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr ""
@@ -8072,7 +8072,7 @@ msgstr "Tổng cộng"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "Số sê-ri"
@@ -8142,7 +8142,7 @@ msgstr "Không tìm thấy tệp hình ảnh"
msgid "part_image tag requires a Part instance"
msgstr "thẻ part_image yêu cầu 1 thực thể sản phẩm"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "thẻ company_image yêu cầu một thực thể doanh nghiệp"
@@ -8158,7 +8158,7 @@ msgstr ""
msgid "Include sub-locations in filtered results"
msgstr ""
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr ""
@@ -8311,314 +8311,314 @@ msgstr "Loại vị trí kho hàng"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "Biểu tượng mặc định cho vị trí không được đặt biểu tượng (tùy chọn)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "Kho hàng"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "Vị trí kho hàng"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "Chủ sở hữu"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "Chọn chủ sở hữu"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "Không thể đưa trực tiếp hàng trong kho vào bên trong vị trí kho hàng có cấu trúc, nhưng có thể đặt vào kho con."
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "Bên ngoài"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "Đây là vị trí kho bên ngoài"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "Loại vị trí"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "Loại vị trí kho hàng của địa điểm này"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "Bạn không thể chuyển đổi vị trí kho hàng này thành cấu trúc vì đã có hàng hóa trong kho được đặt vào bên trong nó!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr ""
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr ""
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "Không thể đặt hàng trong kho vào trong địa điểm kho có cấu trúc!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "Không thể tạo hàng hóa trong kho cho sản phẩm ảo"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "Loại sản phẩm ('{self.supplier_part.part}') phải là {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "Số lượng phải là 1 cho hàng hóa với số sê ri"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "Số sê ri không thể đặt được nếu số lượng lớn hơn 1"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "Hàng hóa không thể thuộc về chính nó"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "Hàng hóa phải có 1 tham chiếu bản dựng nếu is_building=True"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "Tham chiếu bản dựng không thể trỏ vào cùng một đối tượng sản phẩm"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "Hàng trong kho cha"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "Sản phẩm cơ bản"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "Chọn sản phẩm nhà cung cấp khớp với hàng hóa trong kho này"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "Hàng trong kho này được đặt ở đâu?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "Đóng gói hàng hóa này được lưu trữ lại"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "Đã cài đặt trong"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "Mục này đã được cài đặt trong mục khác?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "Số sê ri cho mục này"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "Mã lô cho hàng trong kho này"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "Số lượng tồn kho"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "Bản dựng nguồn"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "Bản dựng cho hàng hóa này"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "Tiêu thụ bởi"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "Đơn đặt bản dựng đã dùng hàng hóa này"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "Đơn đặt mua nguồn"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "Đơn đặt mua cho hàng hóa này"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "Đơn hàng bán đích"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "Ngày hết hạn của hàng hóa này. Kho sẽ được nhắc tình trạng hết hạn sau ngày này"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "Xóa khi thiếu hụt"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "Xóa hàng trong kho này khi kho hàng bị thiếu hụt"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "Giá mua riêng lẻ tại thời điểm mua"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "Đã chuyển đổi sang sản phẩm"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr ""
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "Chưa đặt sản phẩm thành có thể theo dõi"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "Số lượng phải là số nguyên"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "Số lượng không thể vượt quá số lượng trong kho đang có ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr ""
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "Số lượng không khớp với số sêri"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr ""
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "Hàng trong kho đã được gán vào đơn hàng bán"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "Hàng trong kho đã được cài đặt vào hàng hóa khác"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "Hàng trong kho chứa hàng hóa khác"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "Hàng trong kho đã được gắn với một khách hàng"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "Hàng trong kho hiện đang sản xuất"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "Không thể hợp nhất kho nối tiếp"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "Mặt hàng trùng lặp"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "Mặt hàng phải tham chiếu đến sản phẩm tương tự"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "Mặt hàng phải tham chiếu đến sản phẩm nhà cung cấp tương tự"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "Mã trạng thái kho phải phù hợp"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "Không thể xóa mặt hàng không ở trong kho"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr ""
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "Ghi chú đầu vào"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr ""
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "Phải cung cấp giá trị cho kiểm thử này"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "Phải tải liên đính kèm cho kiểm thử này"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr ""
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "Kết quả kiểm thử"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "Giá trị đầu ra kiểm thử"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "Đính kèm kết quả kiểm thử"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "Ghi chú kiểm thử"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr ""
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr ""
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr ""
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr ""
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr ""
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr ""
@@ -8662,43 +8662,43 @@ msgstr ""
msgid "Quantity of serial numbers to generate"
msgstr ""
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr ""
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr ""
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr ""
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "Mục cha"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr ""
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "Sử dụng kích thước đóng gói khi thêm: Số lượng được định nghĩa là số của gói"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr ""
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "Điền số sêri cho hàng hóa mới"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "Số hiệu hàng hoá nhà cung cấp"
@@ -8732,8 +8732,8 @@ msgstr ""
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "Số lượng phải không vượt quá số lượng trong kho đang có ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "Vị trí kho đích"
@@ -8805,103 +8805,103 @@ msgstr "Chọn mặt hàng để đổi trạng thái"
msgid "No stock items selected"
msgstr "Không có mặt hàng nào được chọn"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "Kho phụ"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr ""
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "Sản phẩm phải có thể bán được"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "Hàng hóa được phân bổ đến một đơn hàng bán"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "Hàng hóa được phân bổ đến một đơn đặt bản dựng"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "Khách hàng được gán vào các mặt hàng"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "Công ty đã chọn không phải là khách hàng"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "Ghi chú phân bổ kho"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "Phải cung cấp danh sách mặt hàng"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "Ghi chú gộp kho"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "Cho phép nhiều nhà cung không khớp"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "Cho phép mặt hàng cùng sản phẩm nhà cung cấp khác phải được gộp"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "Cho phép trạng thái không khớp"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "Cho phép mặt hàng với mã trạng thái khác nhau để gộp lại"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "Cần cung cấp ít nhất hai mặt hàng"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr ""
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "Giá trị khóa chính mặt hàng"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr ""
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr ""
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr ""
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "Ghi chú giao dịch kho"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr ""
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr ""
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr ""
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr ""
@@ -9383,83 +9383,83 @@ msgstr "Đơn hàng bán"
msgid "Return Orders"
msgstr "Đơn hàng trả lại"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "Tên người dùng"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "Tên"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "Họ người dùng"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "Họ"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "Tên người dùng"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "Địa chỉ email của người dùng"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "Nhân viên"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "Người dùng có quyền nhân viên"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "Superuser"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "Người dùng này là superuser"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "Tài khoản người dùng đang hoạt động"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr ""
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr ""
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr ""
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr ""
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr ""
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr ""
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "Tài khoản của bạn đã được tạo."
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "Xin hãy sử dụng chức năng tạo lại mật khẩu để đăng nhập"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "Chào mừng đến với InvenTree"
diff --git a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po
index d0ef668039..f4a4f2d053 100644
--- a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "未找到 API 端点"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "批量操作必须提供物品或过滤器列表"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "必须以列表形式提供项目"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "提供了无效的单位"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "必须以字典形式提供筛选器"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "提供了无效的过滤器"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "所有过滤器只能使用true"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "没有符合所供条件的项目"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "未提供数据"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr "此字段的值必须是唯一的。"
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "用户没有权限查阅当前模型。"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "不能将 {original} 转换到 {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "提供的数量无效"
@@ -112,13 +112,13 @@ msgstr "输入日期"
msgid "Invalid decimal value"
msgstr "无效的数值"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "备注"
@@ -171,35 +171,35 @@ msgstr "从这个值中删除 HTML 标签"
msgid "Data contains prohibited markdown content"
msgstr "数据包含禁止的 markdown 内容"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "连接错误"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "服务器响应状态码无效"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "发生异常"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "服务器响应的内容长度值无效"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "图片尺寸过大"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "图片下载超出最大尺寸"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "远程服务器返回了空响应"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "提供的 URL 不是一个有效的图片文件"
@@ -207,11 +207,11 @@ msgstr "提供的 URL 不是一个有效的图片文件"
msgid "Log in to the app"
msgstr "登录应用程序"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "电子邮件"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "您必须启用双重身份验证才能进行后续操作。"
@@ -255,133 +255,133 @@ msgstr "参考字段必须符合指定格式"
msgid "Reference number is too large"
msgstr "参考编号过大"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "无效选项"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "名称"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "描述"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "描述(选填)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "路径"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "同一父级下不能存在重复名称"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown备注(选填)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "条码数据"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "第三方条码数据"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "条码哈希值"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "条码数据的唯一哈希值"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "检测到已存在条码"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "任务失败"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "后台工作任务“{f}”在 {n} 次尝试后失败"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "服务器错误"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "服务器记录了一个错误。"
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "图像"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "必须是有效数字"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "货币"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "从可用选项中选择货币"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
-msgstr ""
+msgstr "此字段不能为空。"
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "无效值"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "远程图片"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "远程图片文件的 URL"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "未启用从远程 URL下载图片"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "从远程URL下载图像失败"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
-msgstr ""
+msgstr "无效的内容类型格式"
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
-msgstr ""
+msgstr "未找到内容类型"
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "无效的物理单位"
msgid "Not a valid currency code"
msgstr "无效的货币代码"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "订单状态"
@@ -562,21 +562,21 @@ msgstr "订单状态"
msgid "Parent Build"
msgstr "父级生产订单"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "包含变体"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "包含变体"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "包含变体"
msgid "Part"
msgstr "零件"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "类别"
@@ -666,80 +666,80 @@ msgstr "最大日期"
msgid "Exclude Tree"
msgstr "排除树"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "生产订单必须取消后才能删除"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "耗材"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "可选项"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "装配件"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "可追溯"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "需检测"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "未结算订单"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "已分配"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "已消耗"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "可用数量"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "已订购"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "生产订单"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "库存位置"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr "产出"
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr "按产出库存项ID筛选,使用“null”查找未安装的生产项。"
@@ -779,9 +779,9 @@ msgstr "目标日期必须在开始日期之后"
msgid "Build Order Reference"
msgstr "生产订单编号"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "销售订单编号"
msgid "SalesOrder to which this build is allocated"
msgstr "该生产订单关联的销售订单"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "源库位"
@@ -857,17 +857,17 @@ msgstr "生产状态"
msgid "Build status code"
msgstr "生产状态代码"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "批号"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "本批产出的批次编号"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "建立日期"
@@ -887,7 +887,7 @@ msgstr "计划完成日期"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "生产订单的计划完成时间,逾期后系统将标记为超期。"
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "完成日期"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "创建该生产订单的用户"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "责任方"
@@ -913,12 +913,12 @@ msgstr "责任方"
msgid "User or group responsible for this build order"
msgstr "该生产订单的责任人或责任团队"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "外部链接"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "指向外部资源的URL链接"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "此生产订单的优先级"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "项目编号"
@@ -960,7 +960,7 @@ msgstr "生产订单 {build} 已完成"
msgid "A build order has been completed"
msgstr "生产订单已完成"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "可追溯零件必须填写序列号"
@@ -976,23 +976,23 @@ msgstr "产出已完成"
msgid "Build output does not match Build Order"
msgstr "产出与生产订单不匹配"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "数量必须大于零"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "数量不能大于产出数量"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "产出未通过所有必要测试"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "产出 {serial} 未通过所有必要测试"
@@ -1001,18 +1001,18 @@ msgstr "产出 {serial} 未通过所有必要测试"
msgid "Cannot partially complete a build output with allocated items"
msgstr "存在已分配物料时无法部分完成生产输出"
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "生产订单行项目"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "生产对象"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "生产对象"
msgid "Quantity"
msgstr "数量"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "生产订单所需数量"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "库存消耗量"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "生产项必须指定产出,因为主零件已经被标记为可追踪的"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "所选库存项与物料清单行项不匹配"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "序列化物料的数量必须为1"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "库存品项超额分配"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "分配的数量必须大于零"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "序列化物料的数量必须为1"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "所选库存项与物料清单行项不匹配"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "已分配数量超过可用库存数量"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "库存项"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "源库存项"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "分配给该生产任务的库存量"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "安裝到"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "目标库存项"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "生产等级"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "零件名称"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "项目编号标签"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "产出"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "生产产出与上级订单不匹配"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "产出零件与生产订单零件不匹配"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "此产出已经完成"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "此产出尚未完全分配"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "输入产出数量"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "可追踪的零件数量必须为整数"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "因为物料清单包含可追踪的零件,所以数量必须为整数"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "序列号"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "输入产出的序列号"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "生产产出的库存地点"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "自动分配序列号"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "自动为所需项目分配对应的序列号"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "以下序列号已存在或无效"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "必须提供产出清单"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "报废品库存地点"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "放弃分配"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "取消对报废产品的库存分配"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "废品产出的原因"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "完工产出存放库位"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "接受不完整的分配"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "如果库存尚未全部分配,则完成产出"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "消耗已分配库存"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "立即扣除已分配给该生产任务的库存"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "移除未完成的产出"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "删除所有未完成的产出"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "禁止操作"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "标记为当前生产订单消耗"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "完成此生产订单前取消分配"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "超额分配库存"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "如何处理分配给生产订单的超额库存"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "存在超额分配的库存项"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "接受未分配"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "接受库存项未被完全分配至生产订单"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "必需库存未完成全量分配"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "接受未完工"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "允许所需数量的产出未完成"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "生产需求数量未完成"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "生产订单有打开的子生产订单"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "生产订单必须处于生产状态"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "生产订单有未完成的产出"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "生产行"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "产出"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "生产产出必须指向相同的生产"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "生产行项目"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part 必须与生产订单零件相同"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "项目必须在库存中"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "可用量 ({q}) 超出限制"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "对于被追踪的零件的分配,必须指定生产产出"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "对于未被追踪的零件,无法指定生产产出"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "必须提供分配项目"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "零件来源的库存地点(留空则可来源于任何库存地点)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "排除位置"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "从该选定的库存地点排除库存项"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "可互换库存"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "在多个位置的库存项目可以互换使用"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "替代品库存"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "允许分配可替换的零件"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "可选项目"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "分配可选的物料清单给生产订单"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "启动自动分配任务失败"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "物料清单参考"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "物料清单零件识别号码"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "物料清单零件名称"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "生产"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "供应商零件"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "已分配数量"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "生产订单编号"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "零件类别名称"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "可追踪"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "已继承的"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "允许变体"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "物料清单项"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "生产中"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "生产计划"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "外部库存"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "可用库存"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "可用的替代品库存"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "可用的变体库存"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "消耗数量超过分配数量"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "库存消耗可选备注"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "生产物料项必须关联到正确的生产订单"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "重复的生产物料项分配"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "订单行项目必须关联到正确的生产订单"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "重复的订单行项目分配"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "必须提供至少一个物料项或行项目"
@@ -1498,19 +1490,19 @@ msgstr "逾期的生产订单"
msgid "Build order {bo} is now overdue"
msgstr "生产订单 {bo} 现已逾期"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "是否链接"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "是否为文件"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "用户没有权限删除此附件"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "用户没有权限删除此附件"
@@ -1530,7 +1522,11 @@ msgstr "未提供有效的货币代码"
msgid "No plugin"
msgstr "暂无插件"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "项目编号标签"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "已是最新"
@@ -1558,7 +1554,7 @@ msgstr "项目描述"
msgid "User or group responsible for this project"
msgstr "负责此项目的用户或团队"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "设置密钥"
@@ -1590,550 +1586,550 @@ msgstr "值未通过验证检查"
msgid "Key string must be unique"
msgstr "键字符串必须是唯一的"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "使用者"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "批发价数量"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "价格"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "指定数量的单位价格"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "端点"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "接收此网络钩子的端点"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "此网络钩子的名称"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "激活"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "网络钩子是否已启用"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "令牌"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "访问令牌"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "密钥"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "HMAC共享密钥"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "消息ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "此邮件的唯一标识符"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "主机"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "接收此消息的主机"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "标题"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "此消息的标题"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "正文"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "此消息的正文"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "接收此消息的终点"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "工作于"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "这条消息的工作完成了吗?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "标识"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "标题"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "链接"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "已发布"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "作者"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "摘要"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "阅读"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "这条新闻被阅读了吗?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "图像文件"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "此图像的目标模型类型"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "此图像的目标型号ID"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "自定义单位"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "单位符号必须唯一"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "单位名称必须是有效的标识符"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "单位名称"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "符号"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "可选单位符号"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "定义"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "单位定义"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "附件"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "缺少文件"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "缺少外部链接"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "模型类型"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "图片的目标模型类型"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "选择附件"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "备注"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "附件备注"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "上传日期"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "上传文件的日期"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "文件大小"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "文件大小,以字节为单位"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "为附件指定的模型类型无效"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "自定状态"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "定制状态"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "参考状态设置"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "使用此自定义状态扩展状态的状态集"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "逻辑密钥"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "等同于商业逻辑中自定义状态的状态逻辑键"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "值"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "将保存至模型数据库的数值"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "状态名"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "标签"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "将在前端显示的标签"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "颜色"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "将在前端显示颜色"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "型号"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "该状态关联的模型"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "必须选定模型"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "必须选取密钥"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "必须选中逻辑密钥"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "密钥必须不同于逻辑密钥"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "必须提供有效的参考状态类"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "密钥必须不同于参考状态的逻辑密钥"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "逻辑密钥必须在参考状态的逻辑键中"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "名称必须不同于参考状态的名称"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "选择列表"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "选择列表"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "选择列表的名称"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "选择列表的描述"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "已锁定"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "此选择列表是否已锁定?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "能否使用此选择列表?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "源插件"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "提供选择列表的插件"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "源字符串"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "可选字符串,用于标识本列表的数据来源"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "缺省项"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "本选择列表的默认选项"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "已创建"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "选择列表的创建日期和时间"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "最近更新"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "选择列表的最后更新时间"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "选择列表项"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "选择列表项"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "此选项归属的选择列表"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "选择列表项的值"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "选择列表项的标签"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "选择列表项的描述"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "该选择列表项是否处于激活状态?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "参数模板"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
-msgstr ""
+msgstr "参数模板"
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "勾选框参数不能有单位"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "复选框参数不能有选项"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "选择必须是唯一的"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "参数模板名称必须是唯一的"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
-msgstr ""
+msgstr "此参数模板的目标模型类型"
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "参数名称"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "单位"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "此参数的物理单位"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "参数说明"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "勾选框"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "此参数是否为勾选框?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "选项"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "此参数的有效选择 (逗号分隔)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "此参数的选择列表"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "已启用"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
-msgstr ""
+msgstr "此参数模板是否启用?"
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
-msgstr ""
+msgstr "参数"
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
-msgstr ""
+msgstr "参数"
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "无效的参数值选择"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
-msgstr ""
+msgstr "为附件指定的模型类型无效"
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
-msgstr ""
+msgstr "型号ID"
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
-msgstr ""
+msgstr "此参数的目标模型的 ID"
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "模板"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
-msgstr ""
+msgstr "参数模板"
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "数据"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "参数值"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "参数值"
msgid "Note"
msgstr "备注"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "可选注释字段"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "扫描条码"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "条码数据"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "扫描条码的用户"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "时间戳"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "扫描条形码的日期和时间"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "处理条码的 URL 端点"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "上下文"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "扫描条形码的上下文数据"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "响应"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "扫描条形码的响应数据"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "结果"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "条码扫描成功吗?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "发生错误"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8:邮件日志删除受保护。需设置 INVENTREE_PROTECT_EMAIL_LOG 为 False 以允许删除。"
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "电子邮件信息"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "电子邮箱信息"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "已发布"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "已发送"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "失败"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "已送达"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "已确认"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "入站"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "出站"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "暂无回复消息"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "跟踪交付"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "已读追踪"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "点击追踪"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "全局ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "此消息的标识符 (可能由外部系统提供)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "主题 ID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "此消息主题的标识符 (可能由外部系统提供)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "主题"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "链接到此消息的主题"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
-msgstr "优先级"
+msgstr "优先"
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "邮件主题"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "邮件主题"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "键"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "此主题的唯一密钥 (用于识别主题)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "此主题的唯一标识符"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "内部服务已启动"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "该线程是否为内部启动的?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "创建主题的日期和时间"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "主题最后更新的日期和时间"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} 已取消"
msgid "A order that is assigned to you was canceled"
msgstr "分配给您的订单已取消"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "收到的物品"
@@ -2351,93 +2347,101 @@ msgstr "已根据采购订单收到物品"
msgid "Items have been received against a return order"
msgstr "已收到退货订单中的物品"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "表示设置是否被环境变量覆盖"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "覆盖"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "正在运行"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "等待完成的任务"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "预定的任务"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "失败的任务"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "任务ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "唯一任务ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "锁定"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "锁定时间"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "任务名称"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "功能"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "功能名称"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "参数"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "任务参数"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "关键字参数"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "任务关键词参数"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "文件名"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "模型类型"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "用户无权为此模式创建或编辑附件"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
-msgstr ""
+msgstr "用户没有权限为此模型创建或编辑参数"
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "选择列表已锁定"
@@ -2445,1128 +2449,1132 @@ msgstr "选择列表已锁定"
msgid "No group"
msgstr "无分组"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "网站 URL 已配置为锁定"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "需要重启"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "设置已更改,需要服务器重启"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "等待迁移"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "待处理的数据库迁移数"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "活动的警告代码"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "活跃警告代码的字典"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "实例ID"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "此 InvenTree 实例的唯一标识符"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "公告 ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "在服务器状态信息中公开实例ID(未认证状态下)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "服务器实例名称"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "服务器实例的字符串描述符"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "使用实例名称"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "在标题栏中使用实例名称"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "限制显示 `关于` 信息"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "只向超级管理员显示关于信息"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "公司名称"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "内部公司名称"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "基本 URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "服务器实例的基准 URL"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "默认货币"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "系统价格计算使用的基准货币"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "支持币种"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "支持的货币代码列表"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "货币更新间隔时间"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "检查更新的频率(设置为零以禁用)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "天"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "币种更新插件"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "使用货币更新插件"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "从URL下载"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "允许从外部 URL 下载远程图片和文件"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "下载大小限制"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "远程图片的最大允许下载大小"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "用于从 URL 下载的 User-agent"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "允许覆盖用于从外部 URL 下载图片和文件的 user-agent(留空为默认值)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "严格的 URL 验证"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "验证 URL 时需要 schema 规范"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "更新检查间隔"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "检查更新的频率(设置为零以禁用)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "自动备份"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "启用数据库和媒体文件的自动备份"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "自动备份间隔"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "指定自动备份之间的间隔天数"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "任务删除间隔"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "后台任务结果将在指定天数后删除"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "错误日志删除间隔"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "错误日志将在指定天数后被删除"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "通知删除间隔"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "用户通知将在指定天数后被删除"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "邮件自动清理周期"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "邮件将在指定天数后删除"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "保护邮件日志"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "防止邮件日志条目被删除"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "条形码支持"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "在网页界面启用条形码扫描器支持"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "存储条形码结果"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "存储条形码扫描结果"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "条形码扫描最大计数"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "保存的条形码扫描结果的最大数量"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "条形码扫描延迟设置"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "条形码输入处理延迟时间"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "启用摄像头扫码支持"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "允许通过网络摄像头扫描条形码"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "显示条形码数据"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "在浏览器中将条形码数据显示为文本"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "条形码生成插件"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "用于内部条形码数据生成的插件"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "零件修订"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "启用零件修订字段"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "仅限装配修订版本"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "仅允许对装配零件进行修订"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "允许从装配中删除"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "允许删除已在装配中使用的零件"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN(内部零件号)正则规则"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "用于匹配IPN(内部零件号)格式的正则表达式"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "允许重复的 IPN(内部零件号)"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "允许多个零件共享相同的 IPN(内部零件号)"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "允许编辑 IPN(内部零件号)"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "允许编辑零件时更改IPN(内部零件号)"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "复制零件物料清单数据"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "复制零件时默认复制物料清单数据"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "复制零件参数数据"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "复制零件时默认复制参数数据"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "复制零件测试数据"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "复制零件时默认复制测试数据"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "复制类别参数模板"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "创建零件时复制类别参数模板"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "零件默认为模板"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "默认情况下,元件可由其他零件组装而成"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "组件"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "默认情况下,零件可用作子部件"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "可购买"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "默认情况下可购买零件"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "可销售"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "零件默认为可销售"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "默认情况下可跟踪零件"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "虚拟的"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "默认情况下,零件是虚拟的"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "显示关联零件"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "显示零件的关联零件"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "允许创建初始库存"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "允许在添加新零件时创建初始库存数据"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "允许创建供应商数据"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "允许在添加新零件时创建初始供应商数据"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "零件名称显示格式"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "显示零件名称的格式"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "零件类别默认图标"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "零件类别默认图标 (空表示没有图标)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "最小定价小数位数"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "呈现定价数据时显示的最小小数位数"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "最大定价小数位数"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "呈现定价数据时显示的最大小数位数"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "使用供应商定价"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "将供应商的批发价纳入整体价格计算"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "采购历史价优先"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "当存在历史采购订单价格时,将忽略供应商的批发价"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "使用库存项定价"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "使用手动输入的库存数据进行定价计算"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "库存项目定价时间"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "从定价计算中排除超过此天数的库存项目"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "使用变体定价"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "将产品变体的特殊定价纳入整体价格计算"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "仅限活跃变体"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "仅使用活跃变体零件计算变体价格"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "自动更新定价"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "当内部数据变化时自动更新零件价格"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "价格重建间隔"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "零件价格自动更新前的天数"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "内部价格"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "为零件启用内部核算价格功能"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "内部价格优先"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "若存在内部价格,将覆盖BOM价格区间计算结果"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "启用标签打印功能"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "启用从网络界面打印标签"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "标签图片 DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "生成图像文件以供标签打印插件使用时的 DPI 分辨率"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "启用报告"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "启用报告生成"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "调试模式"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "以调试模式生成报告(HTML 输出)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "日志错误报告"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "记录生成报告时出现的错误"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "页面大小"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "PDF 报告默认页面大小"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "强制参数单位"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "如果提供了单位,参数值必须与指定的单位匹配"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "全局唯一序列号"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "库存项的序列号必须全局唯一"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "删除已耗尽的库存"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "设置库存耗尽时的默认行为"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "批号模板"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "为库存项生成默认批号的模板"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "库存过期"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "启用库存过期功能"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "销售过期库存"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "允许销售过期库存"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "库存临期预警天数"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "库存项过期前被标记为\"临期\"的天数"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "允许使用过期库存"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "允许在生产中使用已过期的库存"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "库存所有权管控"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "启用对库存地点和库存物品的归属权管理"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "库存地点默认图标"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "库存地点默认图标 (空表示没有图标)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "显示已安装的库存项"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "在库存列表中显示已被安装到设备中的库存项"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "在安装项目时检查物料清单"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "已安装的库存项目必须存在于上级零件的物料清单中"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "允许零库存调拨"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "允许对当前库存量为零的物品执行库位间调拨操作"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "生产订单参考模式"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "生成生产订单参考字段所需的模式"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "要求负责人"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "必须为每个订单分配一个负责人"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "需要活动零件"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "防止为非活动零件创建生产订单"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "需要锁定零件"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "防止为未锁定的零件创建生产订单"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "需要有效的物料清单"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "除非物料清单已验证,否则禁止创建生产订单"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "需要关闭子订单"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "在所有子订单关闭之前,阻止生产订单的完成"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "外部生产订单"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "启用外部生产订单功能"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "阻止直到测试通过"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "在所有必要的测试通过之前,阻止产出完成"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "启用订单退货"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "在用户界面中启用订单退货功能"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "退货订单参考模式"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "生成退货订单参考字段所需的模式"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "编辑已完成的退货订单"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "允许编辑已完成的退货订单"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "销售订单参考模式"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "生成销售订单参考字段所需参照模式"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "销售订单默认配送方式"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "启用创建销售订单的默认配送功能"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "编辑已完成的销售订单"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "允许在订单配送或完成后编辑销售订单"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr "货件需核对"
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr "只有所有物品均经核对,才能确认发货完成"
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "标记该订单为已完成?"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "标记为已发货的销售订单将自动完成,绕过“已发货”状态"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "采购订单参考模式"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "生成采购订单参考字段所需的模式"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "编辑已完成的采购订单"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "允许在采购订单已配送或完成后编辑订单"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "货币转换"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "收货时将物料价值折算为基准货币"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "自动完成采购订单"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "当收到所有行项目时,自动将采购订单标记为完成"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "忘记启用密码"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "在登录页面上启用忘记密码功能"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "启用注册"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "在登录页面为用户启用自行注册功能"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "启用SSO登录"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "在登录页面启用单点登录(SSO)功能"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "启用SSO注册"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "允许用户通过登录页面的SSO系统注册账号"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "启用SSO组同步"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "启用后,将自动同步InvenTree用户组与身份提供商(IdP)提供的用户组"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "SSO组属性键"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "身份提供商(IdP)返回的组信息声明属性名称"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "SSO组映射关系"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "将SSO用户组映射到本地InvenTree用户组的对应关系表。如果本地组不存在,系统会自动创建对应的用户组。"
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "移除非SSO来源的用户组"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "当用户组未被身份提供商(IdP)支持时,是否移除该用户组。禁用此选项可能导致安全风险"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "必须提供邮箱"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "用户注册时必须提供邮箱"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "自动填充SSO用户信息"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "自动从SSO账户数据中填充用户详细信息"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "发两次邮件"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "注册时询问用户他们的电子邮件两次"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "两次输入密码"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "当注册时请用户输入密码两次"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "域名白名单"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "限制注册到某些域名 (逗号分隔,以 @ 开头)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "注册默认分组"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "新用户注册时被分配的默认用户组。 如果启用了SSO组同步功能,当无法从身份提供商(IdP)分配组时才会应用此分组。"
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "强制启用多因素安全认证"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "用户必须使用多因素安全认证。"
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "启动时检查插件"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "启动时检查全部插件是否已安装 - 在容器环境中启用"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "检查插件更新"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "启用定期检查已安装插件的更新"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "启用统一资源定位符集成"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "启用插件以添加统一资源定位符路由"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "启用导航集成"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "启用插件以集成到导航中"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "启用应用集成"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "启用插件添加应用"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "启用调度集成"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "启用插件来运行预定任务"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "启用事件集成"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "启用插件响应内部事件"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "启用界面集成"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "启用插件集成到用户界面"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "启用邮件集成"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "启用插件来处理发送/接收邮件"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "启用项目编码"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "启用项目编码来跟踪项目"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "启用库存历史"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "启用历史库存水平及价值记录功能"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "排除外部地点"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "在库存历史统计中排除外部库位的库存项"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "自动盘点周期"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "自动记录库存历史的间隔天数"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "删除旧的库存历史记录"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "删除超过指定天数的库存历史记录"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "库存历史删除间隔"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "库存历史记录将在指定天数后删除"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "显示用户全名"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "显示用户全名而不是用户名"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "显示用户配置"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "在用户个人资料页展示其档案信息"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "启用测试站数据"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "启用测试站数据收集以获取测试结果"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr "启用设备状态检测"
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr "启用定期 Ping 检测,确认注册设备的运行状态"
@@ -3596,11 +3604,11 @@ msgstr "在浏览器中显示PDF报告,而不是作为文件下载"
#: common/setting/user.py:45
msgid "Barcode Scanner in Form Fields"
-msgstr ""
+msgstr "表格字段中的条形码扫描器"
#: common/setting/user.py:46
msgid "Allow barcode scanner input in form fields"
-msgstr ""
+msgstr "允许条形码扫描器输入表单字段"
#: common/setting/user.py:51
msgid "Search Parts"
@@ -3870,7 +3878,7 @@ msgstr "为用户保存上次使用的打印设备"
#: common/validators.py:38
msgid "All models"
-msgstr ""
+msgstr "全部型号"
#: common/validators.py:63
msgid "No attachment model type provided"
@@ -3913,29 +3921,29 @@ msgstr "零件已激活"
msgid "Manufacturer is Active"
msgstr "制造商处于活动状态"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "供应商零件处于激活状态"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "内部零件已激活"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "供应商已激活"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "制造商"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "公司"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "有库存"
@@ -3971,7 +3979,7 @@ msgstr "联系电话"
msgid "Contact email address"
msgstr "联系人电子邮箱地址"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "联系人"
@@ -4024,255 +4032,247 @@ msgstr "税号"
msgid "Company Tax ID"
msgstr "公司税号"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "地址"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "地址"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "选择公司"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "地址标题"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "描述地址条目的标题"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "主要地址"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "设置主要地址"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "第1行"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "地址行1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "第2行"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "地址行2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "邮政编码"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "城市/地区"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "邮政编码城市/地区"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "省/市/自治区"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "省、自治区或直辖市"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "国家/地区"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "地址所在国家"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "快递运单"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "运输快递注意事项"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "内部装运通知单"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "内部使用的装运通知单"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "链接地址信息 (外部)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "制造商零件"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "基础零件"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "选择零件"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "选择制造商"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "制造商零件编号"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "制造商零件编号"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "外部制造商零件链接的URL"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "制造商零件说明"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "包装单位必须与基础零件单位兼容"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "包装单位必须大于零"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "链接的制造商零件必须引用相同的基础零件"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "供应商"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "选择供应商"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "供应商库存管理单位"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "此供应商零件是否处于活动状态?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "选择制造商零件"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "外部供应商零件链接的URL"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "供应商零件说明"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "基本费用"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "最低费用(例如库存费)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "打包"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "零件打包"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "包装数量"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "单包供应的总数量。为单个项目留空。"
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "多个"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "订购多个"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "供应商提供的数量"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "可用性已更新"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "上次更新可用性数据的日期"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "供应商批发价"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "返回主地址的字符串表示形式。此属性为向后兼容而保留。"
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "此供应商使用的默认货币"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "公司名称"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "有库存"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr "批发价"
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "数据导出过程中发生错误"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "数据导出插件返回的数据格式不正确"
@@ -4420,7 +4420,7 @@ msgstr "原始行数据"
msgid "Errors"
msgstr "错误"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "有效"
@@ -4532,7 +4532,7 @@ msgstr "每个标签要打印的份数"
msgid "Connected"
msgstr "已连接"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "未知"
@@ -4664,7 +4664,7 @@ msgstr "进度类型的最大值。当 type=progress 时为必填项"
msgid "Order Reference"
msgstr "订单参考"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "未完成"
@@ -4672,7 +4672,7 @@ msgstr "未完成"
msgid "Has Project Code"
msgstr "有项目编码"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "创建人"
@@ -4712,11 +4712,11 @@ msgstr "目标日期晚于"
msgid "Has Pricing"
msgstr "有定价"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "完成时间早于"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "完成时间晚于"
@@ -4724,40 +4724,40 @@ msgstr "完成时间晚于"
msgid "External Build Order"
msgstr "外部生产订单"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "订单"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "订单完成"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "内部零件"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "订单待定"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "已完成"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "有配送"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "采购订单"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4766,7 +4766,7 @@ msgstr "采购订单"
msgid "Sales Order"
msgstr "销售订单"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4783,11 +4783,11 @@ msgstr "总价格"
msgid "Total price for this order"
msgstr "此订单的总价"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "订单货币"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "此订单的货币 (留空以使用公司默认值)"
@@ -4807,240 +4807,240 @@ msgstr "开始日期必须早于目标日期"
msgid "Address does not match selected company"
msgstr "地址与所选公司不匹配"
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "订单描述 (可选)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "为此订单选择项目编码"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "链接到外部页面"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "开始日期"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "本订单的预定开始日期"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "预计日期"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "订单交付的预期日期。订单将在此日期后过期。"
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "签发日期"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "订单发出日期"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "负责此订单的用户或组"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "此订单的联系人"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "此订单的公司地址"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "订单参考"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "狀態"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "采购订单状态"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "订购物品的公司"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "供应商参考"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "供应商订单参考代码"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "接收人"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "订单完成日期"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "目的地"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "接收物品的目标"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "零件供应商必须与采购订单供应商匹配"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "行项目与采购订单不匹配"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "行项目缺少关联零件"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "数量必须是正数"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "客户"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "出售物品的公司"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "销售订单状态"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "客户参考 "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "客户订单参考代码"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "发货日期"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "发货人"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "订单已完成"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "订单已取消"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "只有未结订单才能标记为已完成"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "由于发货不完整,订单无法完成"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "由于缺货,订单无法完成"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "订单无法完成,因为行项目不完整"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "订单已锁定,不可修改"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "项目数量"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "行项目参考"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "行项目注释"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "此行项目的目标日期 (留空以使用订单中的目标日期)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "行项目描述 (可选)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "此行的附加上下文"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "单位价格"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "采购订单行项目"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "供应商零件必须与供应商匹配"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "生产订单必须标记为外部"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "生产订单仅可关联至装配零件"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "生产订单零件必须与行项目零件一致"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "供应商零件"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "已接收"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "收到的物品数量"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "采购价格"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "每单位的采购价格"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "外部生产订单需由此行项目履行"
@@ -5104,8 +5104,8 @@ msgstr "审核人"
msgid "User who checked this shipment"
msgstr "检查此装运的用户"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "配送"
@@ -5166,7 +5166,11 @@ msgstr "无法将库存分配给没有零件的生产线"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "分配数量不能超过库存数量"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "分配的数量必须大于零"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "序列化库存项目的数量必须为1"
@@ -5174,7 +5178,7 @@ msgstr "序列化库存项目的数量必须为1"
msgid "Sales order does not match shipment"
msgstr "销售订单与发货不匹配"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "发货与销售订单不匹配"
@@ -5258,247 +5262,247 @@ msgstr "与此行项目的退货或维修相关的成本"
msgid "Return Order Extra Line"
msgstr "退货订单附加行"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "订单ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "要复制的订单ID"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "复制行"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "从原始订单复制行项目"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "复制额外行"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "从原始订单复制额外的行项目"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "行项目"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "已完成行项目"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "复制订单"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "指定复制此订单的选项"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "订单ID不正确"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "供应商名称"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "订单不能取消"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "允许关闭行项目不完整的订单"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "订单中的行项目不完整"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "订单未打开"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "自动定价"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "根据供应商零件数据自动计算采购价格"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "购买价格货币"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "合并项目"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "将具有相同零件、目的地和目标日期的项目合并到一个行项目中"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "库存量单位"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "内部零件编号"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "内部零件名称"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "必须指定供应商零件"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "必须指定采购订单"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "供应商必须匹配采购订单"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "采购订单必须与供应商匹配"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "行项目"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "为收到的物品选择目的地位置"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "输入入库项目的批号"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "有效期至"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "输入入库库存项的有效期"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "输入入库库存项目的序列号"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "覆盖传入库存项目的包装资料"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "传入库存项目的附加说明"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "条形码"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "扫描条形码"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "条形码已被使用"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "必须提供行项目"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "必须指定目标位置"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "提供的条形码值必须是唯一的"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "配送"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "完成配送"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "售出价格货币"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "已分配的项目"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "未提供装运详细信息"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "行项目与此订单不关联"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "数量必须为正"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "输入要分配的序列号"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "货物已发出"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "发货与此订单无关"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "未找到以下序列号的匹配项"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "以下序列号不可用"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "退货订单行项目"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "行项目与退货订单不匹配"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "行项目已收到"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "只能根据正在进行的订单接收物品"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "退货数量"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "行价格货币"
@@ -5649,7 +5653,7 @@ msgstr "组件部份是可测试的"
msgid "Uses"
msgstr "使用"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "零件类别"
@@ -5658,7 +5662,7 @@ msgstr "零件类别"
msgid "Part Categories"
msgstr "零件类别"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "默认位置"
@@ -5666,7 +5670,7 @@ msgstr "默认位置"
msgid "Default location for parts in this category"
msgstr "此类别零件的默认库存地点"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "结构性"
@@ -5682,12 +5686,12 @@ msgstr "默认关键字"
msgid "Default keywords for parts in this category"
msgstr "此类别零件的默认关键字"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "图标"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "图标(可选)"
@@ -5695,655 +5699,655 @@ msgstr "图标(可选)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "您不能使这个零件类别结构化,因为有些零件已经分配给了它!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "零件类别参数模板"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "默认值"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "默认参数值"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "零件"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
-msgstr ""
+msgstr "无法删除已锁定零件的参数"
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
-msgstr ""
+msgstr "无法修改已锁定零件的参数"
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "无法删除这个零件,因为它已被锁定"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "无法删除这个零件,因为它仍然处于活动状态"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "无法删除这个零件,因为它被使用在了装配中"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "零件 \"{self}\" 不能用在 \"{parent}\" 的物料清单 (递归)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "零件 \"{parent}\" 被使用在了 \"{self}\" 的物料清单 (递归)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "内部零件号必须匹配正则表达式 {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "零件不能是对自身的修订"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "无法对已经是修订版本的零件进行修订"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "必须指定修订代码"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "修订仅对装配零件允许"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "无法对模版零件进行修订"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "上级零件必须指向相同的模版"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "该序列号库存项己存在"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "在零件设置中不允许重复的内部零件号"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "重复的零件修订版本已经存在。"
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "有这个名字,内部零件号,和修订版本的零件已经存在"
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "零件不能分配到结构性零件类别!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "零件名称"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "是模板"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "这个零件是一个模版零件吗?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "这个零件是另一零件的变体吗?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "变体"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "零件描述(可选)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "关键词"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "提高搜索结果可见性的零件关键字"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "零件类别"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "内部零件号 IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "零件修订版本或版本号"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "版本"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "这零件是另一零件的修订版本吗?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "修订版本"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "该物品通常存放在哪里?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "默认供应商"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "默认供应商零件"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "默认到期"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "此零件库存项的过期时间 (天)"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "最低库存"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "允许的最小库存量"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "此零件的计量单位"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "这个零件可由其他零件加工而成吗?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "这个零件可用于创建其他零件吗?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "此零件是否有唯一物品的追踪功能"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "这一部件能否记录到测试结果?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "这个零件可从外部供应商购买吗?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "此零件可以销售给客户吗?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "这个零件是否已激活?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "无法编辑锁定的零件"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "这是一个虚拟零件,例如一个软件产品或许可证吗?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "物料清单已验证"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "该零件的物料清单是否通过验证?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "物料清单校验和"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "保存的物料清单校验和"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "物料清单检查人"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "物料清单检查日期"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "新建用户"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "此零件的负责人"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "出售多个"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "用于缓存定价计算的货币"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "最低物料清单成本"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "元件的最低成本"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "物料清单的最高成本"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "元件的最高成本"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "最低购买成本"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "最高历史购买成本"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "最大购买成本"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "最高历史购买成本"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "最低内部价格"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "基于内部批发价的最低成本"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "最大内部价格"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "基于内部批发价的最高成本"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "供应商最低价格"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "外部供应商零件的最低价格"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "供应商最高价格"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "来自外部供应商的商零件的最高价格"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "最小变体成本"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "计算出的变体零件的最低成本"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "最大变体成本"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "计算出的变体零件的最大成本"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "最低成本"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "覆盖最低成本"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "最高成本"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "覆盖最大成本"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "计算总最低成本"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "计算总最大成本"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "最低售出价格"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "基于批发价的最低售出价格"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "最高售出价格"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "基于批发价的最大售出价格"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "最低销售成本"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "历史最低售出价格"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "最高销售成本"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "历史最高售出价格"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "用于盘点的零件"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "物品数量"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "盘点时的个别库存条目数"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "盘点时可用库存总额"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "日期"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "进行盘点的日期"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "最低库存成本"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "现有存库存最低成本估算"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "最高库存成本"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "目前库存最高成本估算"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "零件售出价格折扣"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "零件测试模板"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "模板名称无效 - 必须包含至少一个字母或者数字"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "测试模板只能为可拆分的部件创建"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "零件已存在具有相同主键的测试模板"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "测试名"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "输入测试的名称"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "测试主键"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "简化测试主键"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "测试说明"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "输入测试的描述"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "此测试是否已启用?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "必须的"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "需要此测试才能通过吗?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "需要值"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "添加测试结果时是否需要一个值?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "需要附件"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "添加测试结果时是否需要文件附件?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "此测试的有效选择 (逗号分隔)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "物料清单项目不能被修改 - 装配已锁定"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "物料清单项目不能修改 - 变体装配已锁定"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "选择父零件"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "子零件"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "选择要用于物料清单的零件"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "此物料清单项目的数量"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "此物料清单项目是可选的"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "这个物料清单项目是耗材 (它没有在生产订单中被追踪)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "设置数量"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "为补偿生产准备损耗所需的额外数量"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "损耗"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "生产预估损耗率(百分比,0-100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "舍入倍数"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "将所需生产数量向上舍入至该值的最接近倍数"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "物料清单项目引用"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "物料清单项目注释"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "校验和"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "物料清单行校验和"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "已验证"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "此物料清单项目已验证"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "获取继承的"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "此物料清单项目是由物料清单继承的变体零件"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "变体零件的库存项可以用于此物料清单项目"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "可追踪零件的数量必须是整数"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "必须指定子零件"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "物料清单项目替代品"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "替代品零件不能与主零件相同"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "上级物料清单项目"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "替代品零件"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "零件 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "零件2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "选择相关的零件"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "此关系的注释"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "零件关系不能在零件和自身之间创建"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "复制关系已经存在"
@@ -6467,203 +6471,199 @@ msgstr "与此制造商零件编号 (MPN) 的相匹配的制造商零件已存
msgid "Supplier part matching this SKU already exists"
msgstr "匹配此库存单位 (SKU) 的供应商零件已存在"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "类别名称"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "正在生产"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "目前正在生产的零件数量"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "此零件计划待产数量"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "库存项"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "修订"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "供应商"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "库存总量"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "未分配的库存"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "变体库存"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "重复零件"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "从另一个零件复制初始数据"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "初始库存"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "创建具有初始库存数量的零件"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "供应商信息"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "添加此零件的初始供应商信息"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "复制类别参数"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "从选择的零件复制参数模版"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "现有的图片"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "现有零件图片的文件名"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "图片不存在"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "验证整个物料清单"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "可以创建"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "生产订单必填项"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "分配到生产订单"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "销售订单必填项"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "分配到销售订单"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "最低价格"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "覆盖已计算的最低价格值"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "最低价格货币"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "最高价格"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "覆盖已计算的最高价格值"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "最高价格货币"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "更新"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "更新这个零件的价格"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "无法将所提供的货币转换为 {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "最低价格不能高于最高价格。"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "最高价格不能低于最低价格"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "选择父装配"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "选择零部件"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "选择要复制物料清单的零件"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "移除现有数据"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "复制前删除现有的物料清单项目"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "包含继承的"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "包含从模板零件继承的物料清单项目"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "跳过无效行"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "启用此选项以跳过无效行"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "复制替代品零件"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "复制物料清单项目时复制替代品零件"
@@ -6734,108 +6734,108 @@ msgstr "未指定操作"
msgid "No matching action found"
msgstr "未找到指定操作"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "未找到匹配条形码数据"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "找到匹配条形码数据"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "不支持模型"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "找不到模型实例"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "条形码匹配现有项目"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "没有找到匹配的零件数据"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "没有找到匹配的供应商零件"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "找到多个匹配的供应商零件"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "没有找到匹配条形码数据的插件"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "匹配的供应商零件"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "项目已被接收"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "没有匹配供应商条形码的插件"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "找到多个匹配的行项目"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "未找到匹配的行项目"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "未提供销售订单"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "条形码与现有的库存项不匹配"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "库存项与行项目不匹配"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "可用库存不足"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "库存项已分配到销售订单"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "没有足够的信息"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "找到匹配的项目"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "供应商零件与行项目不匹配"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "行项目已完成"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "需要更多信息以接收行项目"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "已收到采购订单行项目"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "接收行项目失败"
@@ -6974,7 +6974,7 @@ msgstr "提供条形码本地支持"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7072,111 +7072,111 @@ msgstr "补发追溯订单"
msgid "Automatically issue orders that are backdated"
msgstr "自动补发追溯订单"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "等级"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "导出的层级数 - 设置为零以导出所有物料清单层级"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "总数量"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "在物料清单中包含每个零件的总数量"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "库存数据"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "包括零件库存数据"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "定价数据"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "包括零件定价数据"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "供应商数据"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "包括供应商数据"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "制造商数据"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "包含制造商数据"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "替代品数据"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "包含替代零件数据"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "参数数据"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "包含零件参数数据"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "多层级物料清单导出器"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "支持多层物料清单导出功能"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "物料清单层级"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "替代品 {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "供应商 {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "供应商 {n} SKU"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "供应商 {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "制造商 {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "制造商 {n} MPN"
@@ -7191,11 +7191,11 @@ msgstr "支持从InvenTree导出数据"
#: plugin/builtin/exporter/parameter_exporter.py:16
msgid "Exclude Inactive"
-msgstr ""
+msgstr "排除未激活的"
#: plugin/builtin/exporter/parameter_exporter.py:17
msgid "Exclude parameters which are inactive"
-msgstr ""
+msgstr "排除未激活的参数"
#: plugin/builtin/exporter/parameter_exporter.py:29
msgid "Parameter Exporter"
@@ -7203,7 +7203,7 @@ msgstr ""
#: plugin/builtin/exporter/parameter_exporter.py:30
msgid "Exporter for model parameter data"
-msgstr ""
+msgstr "模型参数数据导出器"
#: plugin/builtin/exporter/stocktake_exporter.py:25
msgid "Include External Stock"
@@ -7356,11 +7356,11 @@ msgstr "InvenTree 设备标签打印机"
msgid "Provides support for printing using a machine"
msgstr "提供使用设备打印的支持"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "最近使用"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "选项"
@@ -8074,7 +8074,7 @@ msgstr "总计"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "序列号"
@@ -8144,7 +8144,7 @@ msgstr "找不到图片文件"
msgid "part_image tag requires a Part instance"
msgstr "parpart_image 标签需要一个零件实例"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "公司_图片标签需要一个公司实例"
@@ -8160,7 +8160,7 @@ msgstr "按顶级位置筛选"
msgid "Include sub-locations in filtered results"
msgstr "在筛选结果中包含子地点"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "上级地点"
@@ -8313,314 +8313,314 @@ msgstr "库存地点类型"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "为所有没有图标的位置设置默认图标(可选)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "库存地点"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "库存地点"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "所有者"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "选择所有者"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "库存项可能不直接位于结构库存地点,但可能位于其子地点。"
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "外部"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "这是一个外部库存地点"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "位置类型"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "该位置的库存地点类型"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "您不能将此库存地点设置为结构性,因为某些库存项已经位于它!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "{field} 不存在"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "必须指定零件"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "库存项不能存放在结构性库存地点!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "无法为虚拟零件创建库存项"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "零件类型 ('{self.supplier_part.part}') 必须为 {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "有序列号的项目的数量必须是1"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "如果数量大于1,则不能设置序列号"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "项目不能属于其自身"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "如果is_building=True,则项必须具有构建引用"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "构建引用未指向同一零件对象"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "父级库存项"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "基础零件"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "为此库存项目选择匹配的供应商零件"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "这个库存物品在哪里?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "包装此库存物品存储在"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "安装于"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "此项目是否安装在另一个项目中?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "此项目的序列号"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "此库存项的批号"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "库存数量"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "源代码构建"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "为此库存项目构建"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "消费者"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "构建消耗此库存项的生产订单"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "采购订单来源"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "此库存商品的采购订单"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "目的地销售订单"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "库存物品的到期日。在此日期之后,库存将被视为过期"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "耗尽时删除"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "当库存耗尽时删除此库存项"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "购买时一个单位的价格"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "转换为零件"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "数量超过可用库存"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "零件未设置为可跟踪"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "数量必须是整数"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "数量不得超过现有库存量 ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "必须以列表形式提供序列号"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "数量不匹配序列号"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr "无法将库存分配到结构位置"
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "测试模板不存在"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "库存项已分配到销售订单"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "库存项已安装在另一个项目中"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "库存项包含其他项目"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "库存项已分配给客户"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "库存项目前正在生产"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "序列化的库存不能合并"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "复制库存项"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "库存项必须指相同零件"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "库存项必须是同一供应商的零件"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "库存状态码必须匹配"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "库存项不能移动,因为它没有库存"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "库存项跟踪"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "条目注释"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "库存项测试结果"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "必须为此测试提供值"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "测试附件必须上传"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "此测试的值无效"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "测试结果"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "测试输出值"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "测验结果附件"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "测试备注"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "测试站"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "进行测试的测试站的标识符"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "已开始"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "测试开始的时间戳"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "已完成"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "测试结束的时间戳"
@@ -8664,43 +8664,43 @@ msgstr "选择要生成序列号的零件"
msgid "Quantity of serial numbers to generate"
msgstr "要生成的序列号的数量"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "此结果的测试模板"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr "未找到适用于此零件的匹配测试"
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "必须提供模板 ID 或测试名称"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "测试完成时间不能早于测试开始时间"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "父项"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "父库存项"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "添加时使用包装尺寸:定义的数量是包装的数量"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "包装规格"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "输入新项目的序列号"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "供应商零件编号"
@@ -8734,8 +8734,8 @@ msgstr "未提供库存项"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "数量不得超过现有库存量 ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "目标库存位置"
@@ -8807,103 +8807,103 @@ msgstr "选择要更改状态的库存项目"
msgid "No stock items selected"
msgstr "未选择库存商品"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "子位置"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "上级库存地点"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "零件必须可销售"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "物料已分配到销售订单"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "项目被分配到生产订单中"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "客户分配库存项目"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "所选公司不是客户"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "库存分配说明"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "必须提供库存物品清单"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "库存合并说明"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "允许不匹配的供应商"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "允许合并具有不同供应商零件的库存项目"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "允许不匹配的状态"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "允许合并具有不同状态代码的库存项目"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "必须提供至少两件库存物品"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "无更改"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "库存项主键值"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "库存项无现货"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "库存项已有现货"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "数量不得为负"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "库存交易记录"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "合并至现有库存"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "若可行,将退回项目合并至现有库存项"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "下一个序列号"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "上一个序列号"
@@ -8961,7 +8961,7 @@ msgstr "已手动删除库存"
#: stock/status_codes.py:56
msgid "Serialized stock items"
-msgstr "显示已序列化的库存物品"
+msgstr "已序列化的库存物品"
#: stock/status_codes.py:58
msgid "Returned to stock"
@@ -9385,83 +9385,83 @@ msgstr "销售订单"
msgid "Return Orders"
msgstr "退货订单"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "用户名"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "名"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "用户的名字(不包括姓氏)"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "姓"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "用户的姓氏"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "用户的电子邮件地址"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "职员"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "此用户是否拥有员工权限"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "超级用户"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "此用户是否为超级用户"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "此用户帐户是否已激活"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "只有超级用户可以调整此字段"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "密码"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "用户密码"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "覆盖警告"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "覆盖有关密码规则的警告"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "你没有权限创建用户"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "您的账户已创建。"
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "请使用密码重置功能登录"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "欢迎使用 InvenTree"
diff --git a/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po
index 8d082882ef..82d7d8e2ba 100644
--- a/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po
+++ b/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po
@@ -2,8 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2025-12-07 07:33+0000\n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"POT-Creation-Date: 2026-01-15 22:34+0000\n"
+"PO-Revision-Date: 2026-01-15 22:37\n"
"Last-Translator: \n"
"Language-Team: Chinese Traditional\n"
"Language: zh_TW\n"
@@ -17,47 +17,47 @@ msgstr ""
"X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n"
"X-Crowdin-File-ID: 250\n"
-#: InvenTree/api.py:358
+#: InvenTree/api.py:362
msgid "API endpoint not found"
msgstr "未找到 API 端點"
-#: InvenTree/api.py:435
+#: InvenTree/api.py:439
msgid "List of items or filters must be provided for bulk operation"
msgstr "批次操作必須提供項目列表或篩選條件"
-#: InvenTree/api.py:442
+#: InvenTree/api.py:446
msgid "Items must be provided as a list"
msgstr "項目必須以列表形式提供"
-#: InvenTree/api.py:450
+#: InvenTree/api.py:454
msgid "Invalid items list provided"
msgstr "提供了無效的單位"
-#: InvenTree/api.py:456
+#: InvenTree/api.py:460
msgid "Filters must be provided as a dict"
msgstr "篩選條件必須以字典 (dict) 格式提供"
-#: InvenTree/api.py:463
+#: InvenTree/api.py:467
msgid "Invalid filters provided"
msgstr "提供了無效的過濾器"
-#: InvenTree/api.py:468
+#: InvenTree/api.py:472
msgid "All filter must only be used with true"
msgstr "all 篩選器只能在值為 true 時使用"
-#: InvenTree/api.py:473
+#: InvenTree/api.py:477
msgid "No items match the provided criteria"
msgstr "沒有項目符合所提供的條件"
-#: InvenTree/api.py:497
+#: InvenTree/api.py:501
msgid "No data provided"
msgstr "未提供資料"
-#: InvenTree/api.py:513
+#: InvenTree/api.py:517
msgid "This field must be unique."
msgstr ""
-#: InvenTree/api.py:803
+#: InvenTree/api.py:812
msgid "User does not have permission to view this model"
msgstr "用户沒有權限查閲當前模型。"
@@ -96,7 +96,7 @@ msgid "Could not convert {original} to {unit}"
msgstr "不能將 {original} 轉換到 {unit}"
#: InvenTree/conversion.py:286 InvenTree/conversion.py:300
-#: InvenTree/helpers.py:597 order/models.py:721 order/models.py:1016
+#: InvenTree/helpers.py:597 order/models.py:722 order/models.py:1017
msgid "Invalid quantity provided"
msgstr "提供的數量無效"
@@ -112,13 +112,13 @@ msgstr "輸入日期"
msgid "Invalid decimal value"
msgstr "無效的十進位數值"
-#: InvenTree/fields.py:218 InvenTree/models.py:1228 build/serializers.py:517
-#: build/serializers.py:588 build/serializers.py:1796 company/models.py:811
-#: order/models.py:1781
+#: InvenTree/fields.py:218 InvenTree/models.py:1233 build/serializers.py:499
+#: build/serializers.py:570 build/serializers.py:1760 company/models.py:798
+#: order/models.py:1782
#: report/templates/report/inventree_build_order_report.html:172
-#: stock/models.py:2865 stock/models.py:2989 stock/serializers.py:717
-#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1336
-#: stock/serializers.py:1425 stock/serializers.py:1624
+#: stock/models.py:2851 stock/models.py:2975 stock/serializers.py:717
+#: stock/serializers.py:893 stock/serializers.py:1035 stock/serializers.py:1342
+#: stock/serializers.py:1431 stock/serializers.py:1630
msgid "Notes"
msgstr "備註"
@@ -171,35 +171,35 @@ msgstr "從這個值中刪除 HTML 標籤"
msgid "Data contains prohibited markdown content"
msgstr "資料包含被禁止的 Markdown 內容"
-#: InvenTree/helpers_model.py:134
+#: InvenTree/helpers_model.py:139
msgid "Connection error"
msgstr "連接錯誤"
-#: InvenTree/helpers_model.py:139 InvenTree/helpers_model.py:146
+#: InvenTree/helpers_model.py:144 InvenTree/helpers_model.py:151
msgid "Server responded with invalid status code"
msgstr "服務器響應狀態碼無效"
-#: InvenTree/helpers_model.py:142
+#: InvenTree/helpers_model.py:147
msgid "Exception occurred"
msgstr "發生異常"
-#: InvenTree/helpers_model.py:152
+#: InvenTree/helpers_model.py:157
msgid "Server responded with invalid Content-Length value"
msgstr "服務器響應的內容長度值無效"
-#: InvenTree/helpers_model.py:155
+#: InvenTree/helpers_model.py:160
msgid "Image size is too large"
msgstr "圖片尺寸過大"
-#: InvenTree/helpers_model.py:167
+#: InvenTree/helpers_model.py:172
msgid "Image download exceeded maximum size"
msgstr "圖片下載超出最大尺寸"
-#: InvenTree/helpers_model.py:172
+#: InvenTree/helpers_model.py:177
msgid "Remote server returned empty response"
msgstr "遠程服務器返回了空響應"
-#: InvenTree/helpers_model.py:180
+#: InvenTree/helpers_model.py:185
msgid "Supplied URL is not a valid image file"
msgstr "提供的 URL 不是一個有效的圖片文件"
@@ -207,11 +207,11 @@ msgstr "提供的 URL 不是一個有效的圖片文件"
msgid "Log in to the app"
msgstr "登入此應用程式"
-#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:198
+#: InvenTree/magic_login.py:41 company/models.py:173 users/serializers.py:201
msgid "Email"
msgstr "電子郵件"
-#: InvenTree/middleware.py:177
+#: InvenTree/middleware.py:178
msgid "You must enable two-factor authentication before doing anything else."
msgstr "在進行任何其他操作前,必須先啟用雙因素驗證。"
@@ -255,133 +255,133 @@ msgstr "參考欄位並須符合格式"
msgid "Reference number is too large"
msgstr "參考編號過大"
-#: InvenTree/models.py:896
+#: InvenTree/models.py:901
msgid "Invalid choice"
msgstr "無效的選項"
-#: InvenTree/models.py:1017 common/models.py:1414 common/models.py:1841
-#: common/models.py:2102 common/models.py:2227 common/models.py:2494
-#: common/serializers.py:539 generic/states/serializers.py:20
-#: machine/models.py:25 part/models.py:1127 plugin/models.py:54
+#: InvenTree/models.py:1022 common/models.py:1430 common/models.py:1857
+#: common/models.py:2118 common/models.py:2243 common/models.py:2510
+#: common/serializers.py:566 generic/states/serializers.py:20
+#: machine/models.py:25 part/models.py:1108 plugin/models.py:54
#: report/models.py:216 stock/models.py:84
msgid "Name"
msgstr "名稱"
-#: InvenTree/models.py:1023 build/models.py:253 common/models.py:175
-#: common/models.py:2234 common/models.py:2347 common/models.py:2509
-#: company/models.py:545 company/models.py:802 order/models.py:443
-#: order/models.py:1826 part/models.py:1150 report/models.py:222
+#: InvenTree/models.py:1028 build/models.py:253 common/models.py:175
+#: common/models.py:2250 common/models.py:2363 common/models.py:2525
+#: company/models.py:551 company/models.py:789 order/models.py:444
+#: order/models.py:1827 part/models.py:1131 report/models.py:222
#: report/models.py:815 report/models.py:841
#: report/templates/report/inventree_build_order_report.html:117
#: stock/models.py:90
msgid "Description"
msgstr "描述"
-#: InvenTree/models.py:1024 stock/models.py:91
+#: InvenTree/models.py:1029 stock/models.py:91
msgid "Description (optional)"
msgstr "描述(選填)"
-#: InvenTree/models.py:1039 common/models.py:2815
+#: InvenTree/models.py:1044 common/models.py:2831
msgid "Path"
msgstr "路徑"
-#: InvenTree/models.py:1144
+#: InvenTree/models.py:1149
msgid "Duplicate names cannot exist under the same parent"
msgstr "同一個上層元件下不能有重複的名字"
-#: InvenTree/models.py:1228
+#: InvenTree/models.py:1233
msgid "Markdown notes (optional)"
msgstr "Markdown 註記(選填)"
-#: InvenTree/models.py:1259
+#: InvenTree/models.py:1264
msgid "Barcode Data"
msgstr "條碼資料"
-#: InvenTree/models.py:1260
+#: InvenTree/models.py:1265
msgid "Third party barcode data"
msgstr "第三方條碼資料"
-#: InvenTree/models.py:1266
+#: InvenTree/models.py:1271
msgid "Barcode Hash"
msgstr "條碼雜湊值"
-#: InvenTree/models.py:1267
+#: InvenTree/models.py:1272
msgid "Unique hash of barcode data"
msgstr "條碼資料的唯一雜湊值"
-#: InvenTree/models.py:1348
+#: InvenTree/models.py:1353
msgid "Existing barcode found"
msgstr "發現現有條碼"
-#: InvenTree/models.py:1430
+#: InvenTree/models.py:1435
msgid "Task Failure"
msgstr "任務失敗"
-#: InvenTree/models.py:1431
+#: InvenTree/models.py:1436
#, python-brace-format
msgid "Background worker task '{f}' failed after {n} attempts"
msgstr "背景工作任務「{f}」在嘗試 {n} 次後失敗"
-#: InvenTree/models.py:1458
+#: InvenTree/models.py:1463
msgid "Server Error"
msgstr "伺服器錯誤"
-#: InvenTree/models.py:1459
+#: InvenTree/models.py:1464
msgid "An error has been logged by the server."
msgstr "伺服器紀錄了一個錯誤。"
-#: InvenTree/models.py:1501 common/models.py:1752
+#: InvenTree/models.py:1506 common/models.py:1768
#: report/templates/report/inventree_bill_of_materials_report.html:126
#: report/templates/report/inventree_bill_of_materials_report.html:148
#: report/templates/report/inventree_return_order_report.html:35
msgid "Image"
msgstr "圖像"
-#: InvenTree/serializers.py:255 part/models.py:4196
+#: InvenTree/serializers.py:327 part/models.py:4189
msgid "Must be a valid number"
msgstr "必須是有效的數字"
-#: InvenTree/serializers.py:297 company/models.py:215 part/models.py:3349
+#: InvenTree/serializers.py:369 company/models.py:215 part/models.py:3330
msgid "Currency"
msgstr "貨幣"
-#: InvenTree/serializers.py:300 part/serializers.py:1250
+#: InvenTree/serializers.py:372 part/serializers.py:1231
msgid "Select currency from available options"
msgstr "從可用選項中選擇貨幣"
-#: InvenTree/serializers.py:654
+#: InvenTree/serializers.py:726
msgid "This field may not be null."
msgstr ""
-#: InvenTree/serializers.py:660
+#: InvenTree/serializers.py:732
msgid "Invalid value"
msgstr "無效值"
-#: InvenTree/serializers.py:697
+#: InvenTree/serializers.py:769
msgid "Remote Image"
msgstr "遠程圖片"
-#: InvenTree/serializers.py:698
+#: InvenTree/serializers.py:770
msgid "URL of remote image file"
msgstr "遠程圖片文件的 URL"
-#: InvenTree/serializers.py:716
+#: InvenTree/serializers.py:788
msgid "Downloading images from remote URL is not enabled"
msgstr "未啓用從遠程 URL下載圖片"
-#: InvenTree/serializers.py:723
+#: InvenTree/serializers.py:795
msgid "Failed to download image from remote URL"
msgstr "從遠程URL下載圖像失敗"
-#: InvenTree/serializers.py:806
+#: InvenTree/serializers.py:878
msgid "Invalid content type format"
msgstr ""
-#: InvenTree/serializers.py:809
+#: InvenTree/serializers.py:881
msgid "Content type not found"
msgstr ""
-#: InvenTree/serializers.py:815
+#: InvenTree/serializers.py:887
msgid "Content type does not match required mixin class"
msgstr ""
@@ -553,8 +553,8 @@ msgstr "無效的物理單位"
msgid "Not a valid currency code"
msgstr "無效的貨幣代碼"
-#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1378
-#: order/serializers.py:133
+#: build/api.py:54 order/api.py:116 order/api.py:275 order/api.py:1370
+#: order/serializers.py:122
msgid "Order Status"
msgstr "訂單狀態"
@@ -562,21 +562,21 @@ msgstr "訂單狀態"
msgid "Parent Build"
msgstr "上層生產工單"
-#: build/api.py:84 build/api.py:837 order/api.py:553 order/api.py:776
-#: order/api.py:1179 order/api.py:1454 stock/api.py:573
+#: build/api.py:84 build/api.py:822 order/api.py:551 order/api.py:774
+#: order/api.py:1171 order/api.py:1446 stock/api.py:573
msgid "Include Variants"
msgstr "包含變體"
-#: build/api.py:100 build/api.py:472 build/api.py:851 build/models.py:271
-#: build/serializers.py:1233 build/serializers.py:1364
-#: build/serializers.py:1435 company/models.py:1021 company/serializers.py:490
-#: order/api.py:303 order/api.py:307 order/api.py:934 order/api.py:1192
-#: order/api.py:1195 order/models.py:1942 order/models.py:2109
+#: build/api.py:100 build/api.py:456 build/api.py:836 build/models.py:271
+#: build/serializers.py:1215 build/serializers.py:1371
+#: build/serializers.py:1457 company/models.py:1008 company/serializers.py:434
+#: order/api.py:303 order/api.py:307 order/api.py:930 order/api.py:1184
+#: order/api.py:1187 order/models.py:1943 order/models.py:2109
#: order/models.py:2110 part/api.py:1160 part/api.py:1163 part/api.py:1314
-#: part/models.py:550 part/models.py:3360 part/models.py:3503
-#: part/models.py:3561 part/models.py:3582 part/models.py:3604
-#: part/models.py:3743 part/models.py:3993 part/models.py:4412
-#: part/serializers.py:1801
+#: part/models.py:528 part/models.py:3341 part/models.py:3484
+#: part/models.py:3542 part/models.py:3563 part/models.py:3585
+#: part/models.py:3724 part/models.py:3986 part/models.py:4405
+#: part/serializers.py:1790
#: report/templates/report/inventree_bill_of_materials_report.html:110
#: report/templates/report/inventree_bill_of_materials_report.html:137
#: report/templates/report/inventree_build_order_report.html:109
@@ -586,7 +586,7 @@ msgstr "包含變體"
#: report/templates/report/inventree_sales_order_shipment_report.html:28
#: report/templates/report/inventree_stock_location_report.html:102
#: stock/api.py:586 stock/serializers.py:120 stock/serializers.py:172
-#: stock/serializers.py:408 stock/serializers.py:594 stock/serializers.py:926
+#: stock/serializers.py:410 stock/serializers.py:587 stock/serializers.py:926
#: templates/email/build_order_completed.html:17
#: templates/email/build_order_required_stock.html:17
#: templates/email/low_stock_notification.html:15
@@ -596,9 +596,9 @@ msgstr "包含變體"
msgid "Part"
msgstr "零件"
-#: build/api.py:120 build/api.py:123 build/serializers.py:1446 part/api.py:975
-#: part/api.py:1325 part/models.py:435 part/models.py:1168 part/models.py:3632
-#: part/serializers.py:1617 stock/api.py:869
+#: build/api.py:120 build/api.py:123 build/serializers.py:1470 part/api.py:975
+#: part/api.py:1325 part/models.py:413 part/models.py:1149 part/models.py:3613
+#: part/serializers.py:1606 stock/api.py:869
msgid "Category"
msgstr "類別"
@@ -666,80 +666,80 @@ msgstr "最大日期"
msgid "Exclude Tree"
msgstr "排除樹"
-#: build/api.py:411
+#: build/api.py:395
msgid "Build must be cancelled before it can be deleted"
msgstr "工單必須被取消才能被刪除"
-#: build/api.py:455 build/serializers.py:1382 part/models.py:4027
+#: build/api.py:439 build/serializers.py:1401 part/models.py:4020
msgid "Consumable"
msgstr "耗材"
-#: build/api.py:458 build/serializers.py:1385 part/models.py:4021
+#: build/api.py:442 build/serializers.py:1404 part/models.py:4014
msgid "Optional"
msgstr "非必須項目"
-#: build/api.py:461 build/serializers.py:1423 common/setting/system.py:456
-#: part/models.py:1290 part/serializers.py:1579 part/serializers.py:1590
+#: build/api.py:445 build/serializers.py:1444 common/setting/system.py:470
+#: part/models.py:1271 part/serializers.py:1560 part/serializers.py:1579
#: stock/api.py:639
msgid "Assembly"
msgstr "裝配"
-#: build/api.py:464
+#: build/api.py:448
msgid "Tracked"
msgstr "追蹤中"
-#: build/api.py:467 build/serializers.py:1388 part/models.py:1308
+#: build/api.py:451 build/serializers.py:1407 part/models.py:1289
msgid "Testable"
msgstr "可測試"
-#: build/api.py:477 order/api.py:998 order/api.py:1368
+#: build/api.py:461 order/api.py:994 order/api.py:1360
msgid "Order Outstanding"
msgstr "訂單未完成"
-#: build/api.py:487 build/serializers.py:1472 order/api.py:957
+#: build/api.py:471 build/serializers.py:1497 order/api.py:953
msgid "Allocated"
msgstr "已分配"
-#: build/api.py:496 build/models.py:1673 build/serializers.py:1401
+#: build/api.py:480 build/models.py:1672 build/serializers.py:1420
msgid "Consumed"
msgstr "已消耗"
-#: build/api.py:505 company/models.py:866 company/serializers.py:467
+#: build/api.py:489 company/models.py:853 company/serializers.py:413
#: templates/email/build_order_required_stock.html:19
#: templates/email/low_stock_notification.html:17
#: templates/email/part_event_notification.html:18
msgid "Available"
msgstr "可用數量"
-#: build/api.py:529 build/serializers.py:1474 company/serializers.py:464
-#: order/serializers.py:1295 part/serializers.py:844 part/serializers.py:1171
-#: part/serializers.py:1626
+#: build/api.py:513 build/serializers.py:1499 company/serializers.py:410
+#: order/serializers.py:1251 part/serializers.py:831 part/serializers.py:1152
+#: part/serializers.py:1615
msgid "On Order"
msgstr "已訂購"
-#: build/api.py:874 build/models.py:118 order/models.py:1975
+#: build/api.py:859 build/models.py:118 order/models.py:1976
#: report/templates/report/inventree_build_order_report.html:105
#: stock/serializers.py:93 templates/email/build_order_completed.html:16
#: templates/email/overdue_build_order.html:15
msgid "Build Order"
msgstr "生產工單"
-#: build/api.py:888 build/api.py:892 build/serializers.py:380
-#: build/serializers.py:505 build/serializers.py:575 build/serializers.py:1259
-#: build/serializers.py:1264 order/api.py:1239 order/api.py:1244
-#: order/serializers.py:844 order/serializers.py:984 order/serializers.py:2059
-#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:601
-#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1418
-#: stock/serializers.py:1739 stock/serializers.py:1788
+#: build/api.py:873 build/api.py:877 build/serializers.py:362
+#: build/serializers.py:487 build/serializers.py:557 build/serializers.py:1248
+#: build/serializers.py:1253 order/api.py:1231 order/api.py:1236
+#: order/serializers.py:791 order/serializers.py:931 order/serializers.py:2020
+#: stock/api.py:987 stock/serializers.py:111 stock/serializers.py:594
+#: stock/serializers.py:710 stock/serializers.py:888 stock/serializers.py:1424
+#: stock/serializers.py:1745 stock/serializers.py:1794
#: templates/email/stale_stock_notification.html:18 users/models.py:549
msgid "Location"
msgstr "地點"
-#: build/api.py:900
+#: build/api.py:885
msgid "Output"
msgstr ""
-#: build/api.py:902
+#: build/api.py:887
msgid "Filter by output stock item ID. Use 'null' to find uninstalled build items."
msgstr ""
@@ -779,9 +779,9 @@ msgstr "目標日期必須晚於開始日期"
msgid "Build Order Reference"
msgstr "生產工單代號"
-#: build/models.py:247 build/serializers.py:1379 order/models.py:615
-#: order/models.py:1312 order/models.py:1774 order/models.py:2713
-#: part/models.py:4067
+#: build/models.py:247 build/serializers.py:1398 order/models.py:616
+#: order/models.py:1313 order/models.py:1775 order/models.py:2713
+#: part/models.py:4060
#: report/templates/report/inventree_bill_of_materials_report.html:139
#: report/templates/report/inventree_purchase_order_report.html:35
#: report/templates/report/inventree_return_order_report.html:26
@@ -809,7 +809,7 @@ msgstr "銷售訂單代號"
msgid "SalesOrder to which this build is allocated"
msgstr "這張生產工單對應的銷售訂單"
-#: build/models.py:290 build/serializers.py:1105
+#: build/models.py:290 build/serializers.py:1087
msgid "Source Location"
msgstr "來源倉儲地點"
@@ -857,17 +857,17 @@ msgstr "生產狀態"
msgid "Build status code"
msgstr "生產狀態代碼"
-#: build/models.py:344 build/serializers.py:367 order/serializers.py:860
-#: stock/models.py:1100 stock/serializers.py:85 stock/serializers.py:1591
+#: build/models.py:344 build/serializers.py:349 order/serializers.py:807
+#: stock/models.py:1086 stock/serializers.py:85 stock/serializers.py:1597
msgid "Batch Code"
msgstr "批號"
-#: build/models.py:348 build/serializers.py:368
+#: build/models.py:348 build/serializers.py:350
msgid "Batch code for this build output"
msgstr "此產出的批號"
-#: build/models.py:352 order/models.py:480 order/serializers.py:193
-#: part/models.py:1371
+#: build/models.py:352 order/models.py:481 order/serializers.py:165
+#: part/models.py:1352
msgid "Creation Date"
msgstr "建立日期"
@@ -887,7 +887,7 @@ msgstr "目標完成日期"
msgid "Target date for build completion. Build will be overdue after this date."
msgstr "生產的預計完成日期。若超過此日期則工單會逾期。"
-#: build/models.py:372 order/models.py:668 order/models.py:2752
+#: build/models.py:372 order/models.py:669 order/models.py:2752
msgid "Completion Date"
msgstr "完成日期"
@@ -904,7 +904,7 @@ msgid "User who issued this build order"
msgstr "發布此生產工單的使用者"
#: build/models.py:399 common/models.py:184 order/api.py:184
-#: order/models.py:505 part/models.py:1388
+#: order/models.py:506 part/models.py:1369
#: report/templates/report/inventree_build_order_report.html:158
msgid "Responsible"
msgstr "負責人"
@@ -913,12 +913,12 @@ msgstr "負責人"
msgid "User or group responsible for this build order"
msgstr "負責此生產工單的使用者或羣組"
-#: build/models.py:405 stock/models.py:1093
+#: build/models.py:405 stock/models.py:1079
msgid "External Link"
msgstr "外部連結"
-#: build/models.py:407 common/models.py:1990 part/models.py:1202
-#: stock/models.py:1095
+#: build/models.py:407 common/models.py:2006 part/models.py:1183
+#: stock/models.py:1081
msgid "Link to external URL"
msgstr "外部URL連結"
@@ -931,7 +931,7 @@ msgid "Priority of this build order"
msgstr "此生產工單的優先程度"
#: build/models.py:423 common/models.py:154 common/models.py:168
-#: order/api.py:170 order/models.py:452 order/models.py:1806
+#: order/api.py:170 order/models.py:453 order/models.py:1807
msgid "Project Code"
msgstr "專案代碼"
@@ -960,7 +960,7 @@ msgstr "生產工單 {build} 已經完成"
msgid "A build order has been completed"
msgstr "一張生產工單已經完成"
-#: build/models.py:912 build/serializers.py:415
+#: build/models.py:912 build/serializers.py:397
msgid "Serial numbers must be provided for trackable parts"
msgstr "對於可跟蹤的零件,必須提供序列號"
@@ -976,23 +976,23 @@ msgstr "產出已完成"
msgid "Build output does not match Build Order"
msgstr "產出與生產訂單不匹配"
-#: build/models.py:1137 build/models.py:1235 build/serializers.py:293
-#: build/serializers.py:343 build/serializers.py:973 build/serializers.py:1747
-#: order/models.py:718 order/serializers.py:669 order/serializers.py:855
-#: part/serializers.py:1573 stock/models.py:940 stock/models.py:1430
-#: stock/models.py:1878 stock/serializers.py:688 stock/serializers.py:1580
+#: build/models.py:1137 build/models.py:1235 build/serializers.py:275
+#: build/serializers.py:325 build/serializers.py:955 build/serializers.py:1711
+#: order/models.py:719 order/serializers.py:602 order/serializers.py:802
+#: part/serializers.py:1554 stock/models.py:926 stock/models.py:1416
+#: stock/models.py:1864 stock/serializers.py:688 stock/serializers.py:1586
msgid "Quantity must be greater than zero"
msgstr "數量必須大於零"
-#: build/models.py:1141 build/models.py:1240 build/serializers.py:298
+#: build/models.py:1141 build/models.py:1240 build/serializers.py:280
msgid "Quantity cannot be greater than the output quantity"
msgstr "數量不能大於輸出數量"
-#: build/models.py:1215 build/serializers.py:614
+#: build/models.py:1215 build/serializers.py:596
msgid "Build output has not passed all required tests"
msgstr "此產出尚未通過所有必要測試"
-#: build/models.py:1218 build/serializers.py:609
+#: build/models.py:1218 build/serializers.py:591
#, python-brace-format
msgid "Build output {serial} has not passed all required tests"
msgstr "產出 {serial} 未通過所有必要測試"
@@ -1001,18 +1001,18 @@ msgstr "產出 {serial} 未通過所有必要測試"
msgid "Cannot partially complete a build output with allocated items"
msgstr ""
-#: build/models.py:1628
+#: build/models.py:1627
msgid "Build Order Line Item"
msgstr "生產訂單行項目"
-#: build/models.py:1652
+#: build/models.py:1651
msgid "Build object"
msgstr "生產對象"
-#: build/models.py:1664 build/models.py:1975 build/serializers.py:279
-#: build/serializers.py:328 build/serializers.py:1400 common/models.py:1344
-#: order/models.py:1757 order/models.py:2598 order/serializers.py:1710
-#: order/serializers.py:2141 part/models.py:3517 part/models.py:4015
+#: build/models.py:1663 build/models.py:1985 build/serializers.py:261
+#: build/serializers.py:310 build/serializers.py:1419 common/models.py:1360
+#: order/models.py:1758 order/models.py:2598 order/serializers.py:1673
+#: order/serializers.py:2109 part/models.py:3498 part/models.py:4008
#: report/templates/report/inventree_bill_of_materials_report.html:138
#: report/templates/report/inventree_build_order_report.html:113
#: report/templates/report/inventree_purchase_order_report.html:36
@@ -1030,427 +1030,419 @@ msgstr "生產對象"
msgid "Quantity"
msgstr "數量"
-#: build/models.py:1665
+#: build/models.py:1664
msgid "Required quantity for build order"
msgstr "生產工單所需數量"
-#: build/models.py:1674
+#: build/models.py:1673
msgid "Quantity of consumed stock"
msgstr "已消耗庫存數量"
-#: build/models.py:1773
+#: build/models.py:1771
msgid "Build item must specify a build output, as master part is marked as trackable"
msgstr "生產項必須指定產出,因為主零件已經被標記為可追蹤的"
-#: build/models.py:1784
+#: build/models.py:1834
+msgid "Selected stock item does not match BOM line"
+msgstr "選擇的庫存品項和BOM的項目不符"
+
+#: build/models.py:1853
+msgid "Allocated quantity must be greater than zero"
+msgstr ""
+
+#: build/models.py:1859
+msgid "Quantity must be 1 for serialized stock"
+msgstr "有序號的品項數量必須為1"
+
+#: build/models.py:1869
#, python-brace-format
msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})"
msgstr "分配的數量({q})不能超過可用的庫存數量({a})"
-#: build/models.py:1805 order/models.py:2547
+#: build/models.py:1886 order/models.py:2547
msgid "Stock item is over-allocated"
msgstr "庫存品項超額分配"
-#: build/models.py:1810 order/models.py:2550
-msgid "Allocation quantity must be greater than zero"
-msgstr "分配的數量必須大於零"
-
-#: build/models.py:1816
-msgid "Quantity must be 1 for serialized stock"
-msgstr "有序號的品項數量必須為1"
-
-#: build/models.py:1876
-msgid "Selected stock item does not match BOM line"
-msgstr "選擇的庫存品項和BOM的項目不符"
-
-#: build/models.py:1914
-msgid "Allocated quantity exceeds available stock quantity"
-msgstr "分配數量超過可用庫存"
-
-#: build/models.py:1965 build/serializers.py:956 build/serializers.py:1248
-#: order/serializers.py:1547 order/serializers.py:1568
+#: build/models.py:1975 build/serializers.py:938 build/serializers.py:1231
+#: order/serializers.py:1510 order/serializers.py:1531
#: report/templates/report/inventree_sales_order_shipment_report.html:29
-#: stock/api.py:1404 stock/models.py:456 stock/serializers.py:102
-#: stock/serializers.py:800 stock/serializers.py:1274 stock/serializers.py:1386
+#: stock/api.py:1404 stock/models.py:442 stock/serializers.py:102
+#: stock/serializers.py:800 stock/serializers.py:1280 stock/serializers.py:1392
msgid "Stock Item"
msgstr "庫存品項"
-#: build/models.py:1966
+#: build/models.py:1976
msgid "Source stock item"
msgstr "來源庫存項目"
-#: build/models.py:1976
+#: build/models.py:1986
msgid "Stock quantity to allocate to build"
msgstr "要分配的庫存數量"
-#: build/models.py:1985
+#: build/models.py:1995
msgid "Install into"
msgstr "安裝到"
-#: build/models.py:1986
+#: build/models.py:1996
msgid "Destination stock item"
msgstr "目的庫存品項"
-#: build/serializers.py:120
+#: build/serializers.py:118
msgid "Build Level"
msgstr "構建等級"
-#: build/serializers.py:136
+#: build/serializers.py:131
msgid "Part Name"
msgstr "零件名稱"
-#: build/serializers.py:161
-msgid "Project Code Label"
-msgstr "項目編碼標籤"
-
-#: build/serializers.py:227 build/serializers.py:982
+#: build/serializers.py:209 build/serializers.py:964
msgid "Build Output"
msgstr "產出"
-#: build/serializers.py:239
+#: build/serializers.py:221
msgid "Build output does not match the parent build"
msgstr "產出與之前的生產不匹配"
-#: build/serializers.py:243
+#: build/serializers.py:225
msgid "Output part does not match BuildOrder part"
msgstr "產出零件與生產訂單零件不匹配"
-#: build/serializers.py:247
+#: build/serializers.py:229
msgid "This build output has already been completed"
msgstr "此產出已經完成"
-#: build/serializers.py:261
+#: build/serializers.py:243
msgid "This build output is not fully allocated"
msgstr "此產出尚未完全分配"
-#: build/serializers.py:280 build/serializers.py:329
+#: build/serializers.py:262 build/serializers.py:311
msgid "Enter quantity for build output"
msgstr "輸入產出數量"
-#: build/serializers.py:351
+#: build/serializers.py:333
msgid "Integer quantity required for trackable parts"
msgstr "可追蹤的零件數量必須為整數"
-#: build/serializers.py:357
+#: build/serializers.py:339
msgid "Integer quantity required, as the bill of materials contains trackable parts"
msgstr "因為BOM包含可追蹤的零件,所以數量必須為整數"
-#: build/serializers.py:374 order/serializers.py:876 order/serializers.py:1714
+#: build/serializers.py:356 order/serializers.py:823 order/serializers.py:1677
#: stock/serializers.py:699
msgid "Serial Numbers"
msgstr "序號"
-#: build/serializers.py:375
+#: build/serializers.py:357
msgid "Enter serial numbers for build outputs"
msgstr "輸出產出的序列號"
-#: build/serializers.py:381
+#: build/serializers.py:363
msgid "Stock location for build output"
msgstr "生產輸出的庫存地點"
-#: build/serializers.py:396
+#: build/serializers.py:378
msgid "Auto Allocate Serial Numbers"
msgstr "自動分配序號"
-#: build/serializers.py:398
+#: build/serializers.py:380
msgid "Automatically allocate required items with matching serial numbers"
msgstr "自動為需要項目分配對應的序號"
-#: build/serializers.py:431 order/serializers.py:962 stock/api.py:1183
-#: stock/models.py:1901
+#: build/serializers.py:413 order/serializers.py:909 stock/api.py:1183
+#: stock/models.py:1887
msgid "The following serial numbers already exist or are invalid"
msgstr "序號已存在或無效"
-#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:621
+#: build/serializers.py:455 build/serializers.py:511 build/serializers.py:603
msgid "A list of build outputs must be provided"
msgstr "必須提供產出清單"
-#: build/serializers.py:506
+#: build/serializers.py:488
msgid "Stock location for scrapped outputs"
msgstr "廢品產出的庫存位置"
-#: build/serializers.py:512
+#: build/serializers.py:494
msgid "Discard Allocations"
msgstr "放棄分配"
-#: build/serializers.py:513
+#: build/serializers.py:495
msgid "Discard any stock allocations for scrapped outputs"
msgstr "取消對廢品產出的任何庫存分配"
-#: build/serializers.py:518
+#: build/serializers.py:500
msgid "Reason for scrapping build output(s)"
msgstr "廢品產出的原因"
-#: build/serializers.py:576
+#: build/serializers.py:558
msgid "Location for completed build outputs"
msgstr "已完成刪除的庫存地點"
-#: build/serializers.py:584
+#: build/serializers.py:566
msgid "Accept Incomplete Allocation"
msgstr "接受不完整的分配"
-#: build/serializers.py:585
+#: build/serializers.py:567
msgid "Complete outputs if stock has not been fully allocated"
msgstr "如果庫存尚未全部分配,則完成產出"
-#: build/serializers.py:710
+#: build/serializers.py:692
msgid "Consume Allocated Stock"
msgstr "消費已分配的庫存"
-#: build/serializers.py:711
+#: build/serializers.py:693
msgid "Consume any stock which has already been allocated to this build"
msgstr "消耗已分配給此生產的任何庫存"
-#: build/serializers.py:717
+#: build/serializers.py:699
msgid "Remove Incomplete Outputs"
msgstr "移除未完成的產出"
-#: build/serializers.py:718
+#: build/serializers.py:700
msgid "Delete any build outputs which have not been completed"
msgstr "刪除所有未完成的產出"
-#: build/serializers.py:745
+#: build/serializers.py:727
msgid "Not permitted"
msgstr "不允許"
-#: build/serializers.py:746
+#: build/serializers.py:728
msgid "Accept as consumed by this build order"
msgstr "接受作為此生產訂單的消費"
-#: build/serializers.py:747
+#: build/serializers.py:729
msgid "Deallocate before completing this build order"
msgstr "完成此生產訂單前取消分配"
-#: build/serializers.py:774
+#: build/serializers.py:756
msgid "Overallocated Stock"
msgstr "超出分配的庫存"
-#: build/serializers.py:777
+#: build/serializers.py:759
msgid "How do you want to handle extra stock items assigned to the build order"
msgstr "如何處理分配給生產訂單的額外庫存項"
-#: build/serializers.py:788
+#: build/serializers.py:770
msgid "Some stock items have been overallocated"
msgstr "有庫存項目已被過度分配"
-#: build/serializers.py:793
+#: build/serializers.py:775
msgid "Accept Unallocated"
msgstr "接受未分配"
-#: build/serializers.py:795
+#: build/serializers.py:777
msgid "Accept that stock items have not been fully allocated to this build order"
msgstr "接受庫存項未被完全分配至生產訂單"
-#: build/serializers.py:806
+#: build/serializers.py:788
msgid "Required stock has not been fully allocated"
msgstr "所需庫存尚未完全分配"
-#: build/serializers.py:811 order/serializers.py:535 order/serializers.py:1615
+#: build/serializers.py:793 order/serializers.py:478 order/serializers.py:1578
msgid "Accept Incomplete"
msgstr "接受不完整"
-#: build/serializers.py:813
+#: build/serializers.py:795
msgid "Accept that the required number of build outputs have not been completed"
msgstr "允許所需數量的產出未完成"
-#: build/serializers.py:824
+#: build/serializers.py:806
msgid "Required build quantity has not been completed"
msgstr "未完成所需生產數量"
-#: build/serializers.py:836
+#: build/serializers.py:818
msgid "Build order has open child build orders"
msgstr "生產訂單有打開的子生產訂單"
-#: build/serializers.py:839
+#: build/serializers.py:821
msgid "Build order must be in production state"
msgstr "生產訂單必須處於生產狀態"
-#: build/serializers.py:842
+#: build/serializers.py:824
msgid "Build order has incomplete outputs"
msgstr "生產訂單有未完成的產出"
-#: build/serializers.py:881
+#: build/serializers.py:863
msgid "Build Line"
msgstr "生產行"
-#: build/serializers.py:889
+#: build/serializers.py:871
msgid "Build output"
msgstr "產出"
-#: build/serializers.py:897
+#: build/serializers.py:879
msgid "Build output must point to the same build"
msgstr "生產產出必須指向相同的生產"
-#: build/serializers.py:928
+#: build/serializers.py:910
msgid "Build Line Item"
msgstr "生產行項目"
-#: build/serializers.py:946
+#: build/serializers.py:928
msgid "bom_item.part must point to the same part as the build order"
msgstr "bom_item.part 必須與生產訂單零件相同"
-#: build/serializers.py:962 stock/serializers.py:1287
+#: build/serializers.py:944 stock/serializers.py:1293
msgid "Item must be in stock"
msgstr "商品必須有庫存"
-#: build/serializers.py:1005 order/serializers.py:1601
+#: build/serializers.py:987 order/serializers.py:1564
#, python-brace-format
msgid "Available quantity ({q}) exceeded"
msgstr "可用量 ({q}) 超出限制"
-#: build/serializers.py:1011
+#: build/serializers.py:993
msgid "Build output must be specified for allocation of tracked parts"
msgstr "對於被追蹤的零件的分配,必須指定生產產出"
-#: build/serializers.py:1019
+#: build/serializers.py:1001
msgid "Build output cannot be specified for allocation of untracked parts"
msgstr "對於未被追蹤的零件,無法指定生產產出"
-#: build/serializers.py:1043 order/serializers.py:1874
+#: build/serializers.py:1025 order/serializers.py:1837
msgid "Allocation items must be provided"
msgstr "必須提供分配項目"
-#: build/serializers.py:1107
+#: build/serializers.py:1089
msgid "Stock location where parts are to be sourced (leave blank to take from any location)"
msgstr "零件來源的庫存地點(留空則可來源於任何庫存地點)"
-#: build/serializers.py:1116
+#: build/serializers.py:1098
msgid "Exclude Location"
msgstr "排除位置"
-#: build/serializers.py:1117
+#: build/serializers.py:1099
msgid "Exclude stock items from this selected location"
msgstr "從該選定的庫存地點排除庫存項"
-#: build/serializers.py:1122
+#: build/serializers.py:1104
msgid "Interchangeable Stock"
msgstr "可互換庫存"
-#: build/serializers.py:1123
+#: build/serializers.py:1105
msgid "Stock items in multiple locations can be used interchangeably"
msgstr "在多個位置的庫存項目可以互換使用"
-#: build/serializers.py:1128
+#: build/serializers.py:1110
msgid "Substitute Stock"
msgstr "替代品庫存"
-#: build/serializers.py:1129
+#: build/serializers.py:1111
msgid "Allow allocation of substitute parts"
msgstr "允許分配可替換的零件"
-#: build/serializers.py:1134
+#: build/serializers.py:1116
msgid "Optional Items"
msgstr "可選項目"
-#: build/serializers.py:1135
+#: build/serializers.py:1117
msgid "Allocate optional BOM items to build order"
msgstr "分配可選的物料清單給生產訂單"
-#: build/serializers.py:1156
+#: build/serializers.py:1138
msgid "Failed to start auto-allocation task"
msgstr "啓動自動分配任務失敗"
-#: build/serializers.py:1208
+#: build/serializers.py:1190
msgid "BOM Reference"
msgstr "物料清單參考"
-#: build/serializers.py:1214
+#: build/serializers.py:1196
msgid "BOM Part ID"
msgstr "物料清單零件識別號碼"
-#: build/serializers.py:1221
+#: build/serializers.py:1203
msgid "BOM Part Name"
msgstr "物料清單零件名稱"
-#: build/serializers.py:1274 build/serializers.py:1457
+#: build/serializers.py:1264 build/serializers.py:1482
msgid "Build"
msgstr "生產"
-#: build/serializers.py:1284 company/models.py:639 order/api.py:316
-#: order/api.py:321 order/api.py:549 order/serializers.py:661
-#: stock/models.py:1036 stock/serializers.py:579
+#: build/serializers.py:1283 company/models.py:628 order/api.py:316
+#: order/api.py:321 order/api.py:547 order/serializers.py:594
+#: stock/models.py:1022 stock/serializers.py:567
msgid "Supplier Part"
msgstr "供應商零件"
-#: build/serializers.py:1292 stock/serializers.py:620
+#: build/serializers.py:1299 stock/serializers.py:620
msgid "Allocated Quantity"
msgstr "已分配數量"
-#: build/serializers.py:1359
+#: build/serializers.py:1366
msgid "Build Reference"
msgstr "構建參考"
-#: build/serializers.py:1369
+#: build/serializers.py:1376
msgid "Part Category Name"
msgstr "零件類別名稱"
-#: build/serializers.py:1391 common/setting/system.py:480 part/models.py:1302
+#: build/serializers.py:1410 common/setting/system.py:494 part/models.py:1283
msgid "Trackable"
msgstr "可追蹤"
-#: build/serializers.py:1394
+#: build/serializers.py:1413
msgid "Inherited"
msgstr "已繼承的"
-#: build/serializers.py:1397 part/models.py:4100
+#: build/serializers.py:1416 part/models.py:4093
msgid "Allow Variants"
msgstr "允許變體"
-#: build/serializers.py:1403 build/serializers.py:1408 part/models.py:3833
-#: part/models.py:4404 stock/api.py:882
+#: build/serializers.py:1422 build/serializers.py:1427 part/models.py:3814
+#: part/models.py:4397 stock/api.py:882
msgid "BOM Item"
msgstr "物料清單項"
-#: build/serializers.py:1475 order/serializers.py:1296 part/serializers.py:1175
-#: part/serializers.py:1630
+#: build/serializers.py:1500 order/serializers.py:1252 part/serializers.py:1156
+#: part/serializers.py:1619
msgid "In Production"
msgstr "生產中"
-#: build/serializers.py:1477 part/serializers.py:835 part/serializers.py:1179
+#: build/serializers.py:1502 part/serializers.py:822 part/serializers.py:1160
msgid "Scheduled to Build"
msgstr "排程生產中"
-#: build/serializers.py:1480 part/serializers.py:872
+#: build/serializers.py:1505 part/serializers.py:855
msgid "External Stock"
msgstr "外部庫存"
-#: build/serializers.py:1481 part/serializers.py:1165 part/serializers.py:1673
+#: build/serializers.py:1506 part/serializers.py:1146 part/serializers.py:1662
msgid "Available Stock"
msgstr "可用庫存"
-#: build/serializers.py:1483
+#: build/serializers.py:1508
msgid "Available Substitute Stock"
msgstr "可用的替代品庫存"
-#: build/serializers.py:1486
+#: build/serializers.py:1511
msgid "Available Variant Stock"
msgstr "可用的變體庫存"
-#: build/serializers.py:1760
+#: build/serializers.py:1724
msgid "Consumed quantity exceeds allocated quantity"
msgstr "消耗數量超過已分配數量"
-#: build/serializers.py:1797
+#: build/serializers.py:1761
msgid "Optional notes for the stock consumption"
msgstr "庫存耗用的可選備註"
-#: build/serializers.py:1814
+#: build/serializers.py:1778
msgid "Build item must point to the correct build order"
msgstr "生產項必須指向正確的生產工單"
-#: build/serializers.py:1819
+#: build/serializers.py:1783
msgid "Duplicate build item allocation"
msgstr "重複的生產項分配"
-#: build/serializers.py:1837
+#: build/serializers.py:1801
msgid "Build line must point to the correct build order"
msgstr "生產行必須指向正確的生產工單"
-#: build/serializers.py:1842
+#: build/serializers.py:1806
msgid "Duplicate build line allocation"
msgstr "重複的生產行分配"
-#: build/serializers.py:1854
+#: build/serializers.py:1818
msgid "At least one item or line must be provided"
msgstr "至少必須提供一個項目或一行"
@@ -1498,19 +1490,19 @@ msgstr "逾期的生產訂單"
msgid "Build order {bo} is now overdue"
msgstr "生產訂單 {bo} 現已逾期"
-#: common/api.py:701
+#: common/api.py:709
msgid "Is Link"
msgstr "是否鏈接"
-#: common/api.py:709
+#: common/api.py:717
msgid "Is File"
msgstr "是否為文件"
-#: common/api.py:756
+#: common/api.py:764
msgid "User does not have permission to delete these attachments"
msgstr "用户沒有權限刪除此附件"
-#: common/api.py:769
+#: common/api.py:777
msgid "User does not have permission to delete this attachment"
msgstr "用户沒有權限刪除此附件"
@@ -1530,7 +1522,11 @@ msgstr "未提供有效的貨幣代碼"
msgid "No plugin"
msgstr "暫無插件"
-#: common/models.py:105 common/models.py:130 common/models.py:3150
+#: common/filters.py:351
+msgid "Project Code Label"
+msgstr "項目編碼標籤"
+
+#: common/models.py:105 common/models.py:130 common/models.py:3166
msgid "Updated"
msgstr "已是最新"
@@ -1558,7 +1554,7 @@ msgstr "項目描述"
msgid "User or group responsible for this project"
msgstr "負責此項目的用户或羣組"
-#: common/models.py:775 common/models.py:1276 common/models.py:1314
+#: common/models.py:775 common/models.py:1292 common/models.py:1330
msgid "Settings key"
msgstr "設定鍵值"
@@ -1590,550 +1586,550 @@ msgstr "值未通過驗證檢查"
msgid "Key string must be unique"
msgstr "鍵字符串必須是唯一的"
-#: common/models.py:1322 common/models.py:1323 common/models.py:1427
-#: common/models.py:1428 common/models.py:1673 common/models.py:1674
-#: common/models.py:2006 common/models.py:2007 common/models.py:2803
-#: importer/models.py:100 part/models.py:3611 part/models.py:3639
+#: common/models.py:1338 common/models.py:1339 common/models.py:1443
+#: common/models.py:1444 common/models.py:1689 common/models.py:1690
+#: common/models.py:2022 common/models.py:2023 common/models.py:2819
+#: importer/models.py:100 part/models.py:3592 part/models.py:3620
#: plugin/models.py:355 plugin/models.py:356
#: report/templates/report/inventree_test_report.html:105 users/models.py:124
#: users/models.py:501
msgid "User"
msgstr "使用者"
-#: common/models.py:1345
+#: common/models.py:1361
msgid "Price break quantity"
msgstr "批發價數量"
-#: common/models.py:1352 company/serializers.py:349 order/models.py:1843
+#: common/models.py:1368 company/serializers.py:316 order/models.py:1844
#: order/models.py:3044
msgid "Price"
msgstr "價格"
-#: common/models.py:1353
+#: common/models.py:1369
msgid "Unit price at specified quantity"
msgstr "指定數量的單位價格"
-#: common/models.py:1404 common/models.py:1589
+#: common/models.py:1420 common/models.py:1605
msgid "Endpoint"
msgstr "端點"
-#: common/models.py:1405
+#: common/models.py:1421
msgid "Endpoint at which this webhook is received"
msgstr "接收此網絡鈎子的端點"
-#: common/models.py:1415
+#: common/models.py:1431
msgid "Name for this webhook"
msgstr "此網絡鈎子的名稱"
-#: common/models.py:1419 common/models.py:2247 common/models.py:2354
-#: company/models.py:192 company/models.py:776 machine/models.py:40
-#: part/models.py:1325 plugin/models.py:69 stock/api.py:642 users/models.py:195
-#: users/models.py:554 users/serializers.py:314
+#: common/models.py:1435 common/models.py:2263 common/models.py:2370
+#: company/models.py:192 company/models.py:763 machine/models.py:40
+#: part/models.py:1306 plugin/models.py:69 stock/api.py:642 users/models.py:195
+#: users/models.py:554 users/serializers.py:319
msgid "Active"
msgstr "激活"
-#: common/models.py:1419
+#: common/models.py:1435
msgid "Is this webhook active"
msgstr "網絡鈎子是否已啓用"
-#: common/models.py:1435 users/models.py:172
+#: common/models.py:1451 users/models.py:172
msgid "Token"
msgstr "令牌"
-#: common/models.py:1436
+#: common/models.py:1452
msgid "Token for access"
msgstr "訪問令牌"
-#: common/models.py:1444
+#: common/models.py:1460
msgid "Secret"
msgstr "密鑰"
-#: common/models.py:1445
+#: common/models.py:1461
msgid "Shared secret for HMAC"
msgstr "HMAC共享密鑰"
-#: common/models.py:1553 common/models.py:3040
+#: common/models.py:1569 common/models.py:3056
msgid "Message ID"
msgstr "消息ID"
-#: common/models.py:1554 common/models.py:3030
+#: common/models.py:1570 common/models.py:3046
msgid "Unique identifier for this message"
msgstr "此郵件的唯一標識符"
-#: common/models.py:1562
+#: common/models.py:1578
msgid "Host"
msgstr "主機"
-#: common/models.py:1563
+#: common/models.py:1579
msgid "Host from which this message was received"
msgstr "接收此消息的主機"
-#: common/models.py:1571
+#: common/models.py:1587
msgid "Header"
msgstr "標題"
-#: common/models.py:1572
+#: common/models.py:1588
msgid "Header of this message"
msgstr "此消息的標題"
-#: common/models.py:1579
+#: common/models.py:1595
msgid "Body"
msgstr "正文"
-#: common/models.py:1580
+#: common/models.py:1596
msgid "Body of this message"
msgstr "此消息的正文"
-#: common/models.py:1590
+#: common/models.py:1606
msgid "Endpoint on which this message was received"
msgstr "接收此消息的終點"
-#: common/models.py:1595
+#: common/models.py:1611
msgid "Worked on"
msgstr "工作於"
-#: common/models.py:1596
+#: common/models.py:1612
msgid "Was the work on this message finished?"
msgstr "這條消息的工作完成了嗎?"
-#: common/models.py:1722
+#: common/models.py:1738
msgid "Id"
msgstr "標識"
-#: common/models.py:1724
+#: common/models.py:1740
msgid "Title"
msgstr "標題"
-#: common/models.py:1726 common/models.py:1989 company/models.py:186
-#: company/models.py:468 company/models.py:536 company/models.py:793
-#: order/models.py:458 order/models.py:1787 order/models.py:2344
-#: part/models.py:1201
+#: common/models.py:1742 common/models.py:2005 company/models.py:186
+#: company/models.py:474 company/models.py:542 company/models.py:780
+#: order/models.py:459 order/models.py:1788 order/models.py:2344
+#: part/models.py:1182
#: report/templates/report/inventree_build_order_report.html:164
msgid "Link"
msgstr "連結"
-#: common/models.py:1728
+#: common/models.py:1744
msgid "Published"
msgstr "已發佈"
-#: common/models.py:1730
+#: common/models.py:1746
msgid "Author"
msgstr "作者"
-#: common/models.py:1732
+#: common/models.py:1748
msgid "Summary"
msgstr "摘要"
-#: common/models.py:1735 common/models.py:3007
+#: common/models.py:1751 common/models.py:3023
msgid "Read"
msgstr "閲讀"
-#: common/models.py:1735
+#: common/models.py:1751
msgid "Was this news item read?"
msgstr "這條新聞被閲讀了嗎?"
-#: common/models.py:1752
+#: common/models.py:1768
msgid "Image file"
msgstr "圖像文件"
-#: common/models.py:1764
+#: common/models.py:1780
msgid "Target model type for this image"
msgstr "此圖像的目標模型類型"
-#: common/models.py:1768
+#: common/models.py:1784
msgid "Target model ID for this image"
msgstr "此圖像的目標型號ID"
-#: common/models.py:1790
+#: common/models.py:1806
msgid "Custom Unit"
msgstr "自定義單位"
-#: common/models.py:1808
+#: common/models.py:1824
msgid "Unit symbol must be unique"
msgstr "單位符號必須唯一"
-#: common/models.py:1823
+#: common/models.py:1839
msgid "Unit name must be a valid identifier"
msgstr "單位名稱必須是有效的標識符"
-#: common/models.py:1842
+#: common/models.py:1858
msgid "Unit name"
msgstr "單位名稱"
-#: common/models.py:1849
+#: common/models.py:1865
msgid "Symbol"
msgstr "符號"
-#: common/models.py:1850
+#: common/models.py:1866
msgid "Optional unit symbol"
msgstr "可選單位符號"
-#: common/models.py:1856
+#: common/models.py:1872
msgid "Definition"
msgstr "定義"
-#: common/models.py:1857
+#: common/models.py:1873
msgid "Unit definition"
msgstr "單位定義"
-#: common/models.py:1917 common/models.py:1980 stock/models.py:2984
-#: stock/serializers.py:247
+#: common/models.py:1933 common/models.py:1996 stock/models.py:2970
+#: stock/serializers.py:249
msgid "Attachment"
msgstr "附件"
-#: common/models.py:1934
+#: common/models.py:1950
msgid "Missing file"
msgstr "缺少檔案"
-#: common/models.py:1935
+#: common/models.py:1951
msgid "Missing external link"
msgstr "缺少外部連結"
-#: common/models.py:1972 common/models.py:2488
+#: common/models.py:1988 common/models.py:2504
msgid "Model type"
msgstr "模型類型"
-#: common/models.py:1973
+#: common/models.py:1989
msgid "Target model type for image"
msgstr "圖像的目標模型類型"
-#: common/models.py:1981
+#: common/models.py:1997
msgid "Select file to attach"
msgstr "選擇附件"
-#: common/models.py:1997
+#: common/models.py:2013
msgid "Comment"
msgstr "註解"
-#: common/models.py:1998
+#: common/models.py:2014
msgid "Attachment comment"
msgstr "附件評論"
-#: common/models.py:2014
+#: common/models.py:2030
msgid "Upload date"
msgstr "上傳日期"
-#: common/models.py:2015
+#: common/models.py:2031
msgid "Date the file was uploaded"
msgstr "上傳文件的日期"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size"
msgstr "文件大小"
-#: common/models.py:2019
+#: common/models.py:2035
msgid "File size in bytes"
msgstr "文件大小,以字節為單位"
-#: common/models.py:2057 common/serializers.py:688
+#: common/models.py:2073 common/serializers.py:715
msgid "Invalid model type specified for attachment"
msgstr "為附件指定的模型類型無效"
-#: common/models.py:2078
+#: common/models.py:2094
msgid "Custom State"
msgstr "自定狀態"
-#: common/models.py:2079
+#: common/models.py:2095
msgid "Custom States"
msgstr "定製狀態"
-#: common/models.py:2084
+#: common/models.py:2100
msgid "Reference Status Set"
msgstr "參考狀態設定"
-#: common/models.py:2085
+#: common/models.py:2101
msgid "Status set that is extended with this custom state"
msgstr "使用此自定義狀態擴展狀態的狀態集"
-#: common/models.py:2089 generic/states/serializers.py:18
+#: common/models.py:2105 generic/states/serializers.py:18
msgid "Logical Key"
msgstr "邏輯密鑰"
-#: common/models.py:2091
+#: common/models.py:2107
msgid "State logical key that is equal to this custom state in business logic"
msgstr "等同於商業邏輯中自定義狀態的狀態邏輯鍵"
-#: common/models.py:2096 common/models.py:2335 machine/serializers.py:27
-#: report/templates/report/inventree_test_report.html:104 stock/models.py:2976
+#: common/models.py:2112 common/models.py:2351 machine/serializers.py:27
+#: report/templates/report/inventree_test_report.html:104 stock/models.py:2962
msgid "Value"
msgstr "值"
-#: common/models.py:2097
+#: common/models.py:2113
msgid "Numerical value that will be saved in the models database"
msgstr "將儲存於模型資料庫中的數值"
-#: common/models.py:2103
+#: common/models.py:2119
msgid "Name of the state"
msgstr "狀態名"
-#: common/models.py:2112 common/models.py:2341 generic/states/serializers.py:22
+#: common/models.py:2128 common/models.py:2357 generic/states/serializers.py:22
msgid "Label"
msgstr "標籤"
-#: common/models.py:2113
+#: common/models.py:2129
msgid "Label that will be displayed in the frontend"
msgstr "在前端顯示的標籤"
-#: common/models.py:2120 generic/states/serializers.py:24
+#: common/models.py:2136 generic/states/serializers.py:24
msgid "Color"
msgstr "顏色"
-#: common/models.py:2121
+#: common/models.py:2137
msgid "Color that will be displayed in the frontend"
msgstr "將在前端顯示顏色"
-#: common/models.py:2129
+#: common/models.py:2145
msgid "Model"
msgstr "模式"
-#: common/models.py:2130
+#: common/models.py:2146
msgid "Model this state is associated with"
msgstr "該狀態關聯的模型"
-#: common/models.py:2145
+#: common/models.py:2161
msgid "Model must be selected"
msgstr "必須選定模型"
-#: common/models.py:2148
+#: common/models.py:2164
msgid "Key must be selected"
msgstr "必須選取密鑰"
-#: common/models.py:2151
+#: common/models.py:2167
msgid "Logical key must be selected"
msgstr "必須選中邏輯密鑰"
-#: common/models.py:2155
+#: common/models.py:2171
msgid "Key must be different from logical key"
msgstr "密鑰必須不同於邏輯密鑰"
-#: common/models.py:2162
+#: common/models.py:2178
msgid "Valid reference status class must be provided"
msgstr "必須提供有效參考狀態類別"
-#: common/models.py:2168
+#: common/models.py:2184
msgid "Key must be different from the logical keys of the reference status"
msgstr "密鑰必須不同於參考狀態的邏輯密鑰"
-#: common/models.py:2175
+#: common/models.py:2191
msgid "Logical key must be in the logical keys of the reference status"
msgstr "邏輯密鑰必須在參考狀態的邏輯鍵中"
-#: common/models.py:2182
+#: common/models.py:2198
msgid "Name must be different from the names of the reference status"
msgstr "名稱必須不同於參考狀態的名稱"
-#: common/models.py:2222 common/models.py:2329 common/models.py:2533
+#: common/models.py:2238 common/models.py:2345 common/models.py:2549
msgid "Selection List"
msgstr "選擇列表"
-#: common/models.py:2223
+#: common/models.py:2239
msgid "Selection Lists"
msgstr "選擇列表"
-#: common/models.py:2228
+#: common/models.py:2244
msgid "Name of the selection list"
msgstr "選擇列表名稱"
-#: common/models.py:2235
+#: common/models.py:2251
msgid "Description of the selection list"
msgstr "選擇列表描述"
-#: common/models.py:2241 part/models.py:1330
+#: common/models.py:2257 part/models.py:1311
msgid "Locked"
msgstr "已鎖定"
-#: common/models.py:2242
+#: common/models.py:2258
msgid "Is this selection list locked?"
msgstr "此選擇列表是否已鎖定?"
-#: common/models.py:2248
+#: common/models.py:2264
msgid "Can this selection list be used?"
msgstr "此選擇列表是否可使用?"
-#: common/models.py:2256
+#: common/models.py:2272
msgid "Source Plugin"
msgstr "來源模組"
-#: common/models.py:2257
+#: common/models.py:2273
msgid "Plugin which provides the selection list"
msgstr "提供此選擇列表的模組"
-#: common/models.py:2262
+#: common/models.py:2278
msgid "Source String"
msgstr "來源字串"
-#: common/models.py:2263
+#: common/models.py:2279
msgid "Optional string identifying the source used for this list"
msgstr "用於標示此列表來源的可選字串"
-#: common/models.py:2272
+#: common/models.py:2288
msgid "Default Entry"
msgstr "預設項目"
-#: common/models.py:2273
+#: common/models.py:2289
msgid "Default entry for this selection list"
msgstr "此選擇列表的預設項目"
-#: common/models.py:2278 common/models.py:3145
+#: common/models.py:2294 common/models.py:3161
msgid "Created"
msgstr "已創建"
-#: common/models.py:2279
+#: common/models.py:2295
msgid "Date and time that the selection list was created"
msgstr "選擇列表建立的日期與時間"
-#: common/models.py:2284
+#: common/models.py:2300
msgid "Last Updated"
msgstr "最近更新"
-#: common/models.py:2285
+#: common/models.py:2301
msgid "Date and time that the selection list was last updated"
msgstr "選擇列表最近更新的日期與時間"
-#: common/models.py:2319
+#: common/models.py:2335
msgid "Selection List Entry"
msgstr "選擇列表項目"
-#: common/models.py:2320
+#: common/models.py:2336
msgid "Selection List Entries"
msgstr "選擇列表項目"
-#: common/models.py:2330
+#: common/models.py:2346
msgid "Selection list to which this entry belongs"
msgstr "該項目所屬的選擇列表"
-#: common/models.py:2336
+#: common/models.py:2352
msgid "Value of the selection list entry"
msgstr "選擇列表項目的值"
-#: common/models.py:2342
+#: common/models.py:2358
msgid "Label for the selection list entry"
msgstr "選擇列表項目的標籤"
-#: common/models.py:2348
+#: common/models.py:2364
msgid "Description of the selection list entry"
msgstr "選擇列表項目的描述"
-#: common/models.py:2355
+#: common/models.py:2371
msgid "Is this selection list entry active?"
msgstr "此選擇列表項目是否啟用?"
-#: common/models.py:2387
+#: common/models.py:2403
msgid "Parameter Template"
msgstr "參數模板"
-#: common/models.py:2388
+#: common/models.py:2404
msgid "Parameter Templates"
msgstr ""
-#: common/models.py:2425
+#: common/models.py:2441
msgid "Checkbox parameters cannot have units"
msgstr "勾選框參數不能有單位"
-#: common/models.py:2430
+#: common/models.py:2446
msgid "Checkbox parameters cannot have choices"
msgstr "複選框參數不能有選項"
-#: common/models.py:2450 part/models.py:3707
+#: common/models.py:2466 part/models.py:3688
msgid "Choices must be unique"
msgstr "選擇必須是唯一的"
-#: common/models.py:2467
+#: common/models.py:2483
msgid "Parameter template name must be unique"
msgstr "參數模板名稱必須是唯一的"
-#: common/models.py:2489
+#: common/models.py:2505
msgid "Target model type for this parameter template"
msgstr ""
-#: common/models.py:2495
+#: common/models.py:2511
msgid "Parameter Name"
msgstr "參數名稱"
-#: common/models.py:2501 part/models.py:1283
+#: common/models.py:2517 part/models.py:1264
msgid "Units"
msgstr "單位"
-#: common/models.py:2502
+#: common/models.py:2518
msgid "Physical units for this parameter"
msgstr "此參數的物理單位"
-#: common/models.py:2510
+#: common/models.py:2526
msgid "Parameter description"
msgstr "參數説明"
-#: common/models.py:2516
+#: common/models.py:2532
msgid "Checkbox"
msgstr "勾選框"
-#: common/models.py:2517
+#: common/models.py:2533
msgid "Is this parameter a checkbox?"
msgstr "此參數是否為勾選框?"
-#: common/models.py:2522 part/models.py:3794
+#: common/models.py:2538 part/models.py:3775
msgid "Choices"
msgstr "選項"
-#: common/models.py:2523
+#: common/models.py:2539
msgid "Valid choices for this parameter (comma-separated)"
msgstr "此參數的有效選擇 (逗號分隔)"
-#: common/models.py:2534
+#: common/models.py:2550
msgid "Selection list for this parameter"
msgstr "此參數的選擇清單"
-#: common/models.py:2539 part/models.py:3769 report/models.py:287
+#: common/models.py:2555 part/models.py:3750 report/models.py:287
msgid "Enabled"
msgstr "已啓用"
-#: common/models.py:2540
+#: common/models.py:2556
msgid "Is this parameter template enabled?"
msgstr ""
-#: common/models.py:2581
+#: common/models.py:2597
msgid "Parameter"
msgstr ""
-#: common/models.py:2582
+#: common/models.py:2598
msgid "Parameters"
msgstr ""
-#: common/models.py:2628
+#: common/models.py:2644
msgid "Invalid choice for parameter value"
msgstr "無效的參數值選擇"
-#: common/models.py:2698 common/serializers.py:783
+#: common/models.py:2714 common/serializers.py:810
msgid "Invalid model type specified for parameter"
msgstr ""
-#: common/models.py:2734
+#: common/models.py:2750
msgid "Model ID"
msgstr ""
-#: common/models.py:2735
+#: common/models.py:2751
msgid "ID of the target model for this parameter"
msgstr ""
-#: common/models.py:2744 common/setting/system.py:450 report/models.py:373
+#: common/models.py:2760 common/setting/system.py:464 report/models.py:373
#: report/models.py:669 report/serializers.py:94 report/serializers.py:135
-#: stock/serializers.py:234
+#: stock/serializers.py:235
msgid "Template"
msgstr "模板"
-#: common/models.py:2745
+#: common/models.py:2761
msgid "Parameter template"
msgstr ""
-#: common/models.py:2750 common/models.py:2792 importer/models.py:546
+#: common/models.py:2766 common/models.py:2808 importer/models.py:546
msgid "Data"
msgstr "數據"
-#: common/models.py:2751
+#: common/models.py:2767
msgid "Parameter Value"
msgstr "參數值"
-#: common/models.py:2760 company/models.py:810 order/serializers.py:894
-#: order/serializers.py:2064 part/models.py:4075 part/models.py:4444
+#: common/models.py:2776 company/models.py:797 order/serializers.py:841
+#: order/serializers.py:2025 part/models.py:4068 part/models.py:4437
#: report/templates/report/inventree_bill_of_materials_report.html:140
#: report/templates/report/inventree_purchase_order_report.html:39
#: report/templates/report/inventree_return_order_report.html:27
@@ -2143,181 +2139,181 @@ msgstr "參數值"
msgid "Note"
msgstr "備註"
-#: common/models.py:2761 stock/serializers.py:718
+#: common/models.py:2777 stock/serializers.py:718
msgid "Optional note field"
msgstr "可選註釋字段"
-#: common/models.py:2788
+#: common/models.py:2804
msgid "Barcode Scan"
msgstr "掃描條碼"
-#: common/models.py:2793
+#: common/models.py:2809
msgid "Barcode data"
msgstr "條碼數據"
-#: common/models.py:2804
+#: common/models.py:2820
msgid "User who scanned the barcode"
msgstr "掃描條碼"
-#: common/models.py:2809 importer/models.py:69
+#: common/models.py:2825 importer/models.py:69
msgid "Timestamp"
msgstr "時間戳"
-#: common/models.py:2810
+#: common/models.py:2826
msgid "Date and time of the barcode scan"
msgstr "掃描條碼的日期和時間"
-#: common/models.py:2816
+#: common/models.py:2832
msgid "URL endpoint which processed the barcode"
msgstr "處理條碼的 URL 終點"
-#: common/models.py:2823 order/models.py:1833 plugin/serializers.py:93
+#: common/models.py:2839 order/models.py:1834 plugin/serializers.py:93
msgid "Context"
msgstr "上下文"
-#: common/models.py:2824
+#: common/models.py:2840
msgid "Context data for the barcode scan"
msgstr "掃描條碼的上下文數據"
-#: common/models.py:2831
+#: common/models.py:2847
msgid "Response"
msgstr "響應"
-#: common/models.py:2832
+#: common/models.py:2848
msgid "Response data from the barcode scan"
msgstr "掃描條碼的響應數據"
-#: common/models.py:2838 report/templates/report/inventree_test_report.html:103
-#: stock/models.py:2970
+#: common/models.py:2854 report/templates/report/inventree_test_report.html:103
+#: stock/models.py:2956
msgid "Result"
msgstr "結果"
-#: common/models.py:2839
+#: common/models.py:2855
msgid "Was the barcode scan successful?"
msgstr "條碼掃描成功嗎?"
-#: common/models.py:2921
+#: common/models.py:2937
msgid "An error occurred"
msgstr "發生錯誤"
-#: common/models.py:2942
+#: common/models.py:2958
msgid "INVE-E8: Email log deletion is protected. Set INVENTREE_PROTECT_EMAIL_LOG to False to allow deletion."
msgstr "INVE-E8:已保護電子郵件日誌刪除。請將 INVENTREE_PROTECT_EMAIL_LOG 設為 False 以允許刪除。"
-#: common/models.py:2989
+#: common/models.py:3005
msgid "Email Message"
msgstr "電子郵件訊息"
-#: common/models.py:2990
+#: common/models.py:3006
msgid "Email Messages"
msgstr "電子郵件訊息"
-#: common/models.py:2997
+#: common/models.py:3013
msgid "Announced"
msgstr "已公告"
-#: common/models.py:2999
+#: common/models.py:3015
msgid "Sent"
msgstr "已發送"
-#: common/models.py:3000
+#: common/models.py:3016
msgid "Failed"
msgstr "失敗"
-#: common/models.py:3003
+#: common/models.py:3019
msgid "Delivered"
msgstr "已送達"
-#: common/models.py:3011
+#: common/models.py:3027
msgid "Confirmed"
msgstr "已確認"
-#: common/models.py:3017
+#: common/models.py:3033
msgid "Inbound"
msgstr "入站"
-#: common/models.py:3018
+#: common/models.py:3034
msgid "Outbound"
msgstr "出站"
-#: common/models.py:3023
+#: common/models.py:3039
msgid "No Reply"
msgstr "不回覆"
-#: common/models.py:3024
+#: common/models.py:3040
msgid "Track Delivery"
msgstr "追蹤投遞"
-#: common/models.py:3025
+#: common/models.py:3041
msgid "Track Read"
msgstr "追蹤已讀"
-#: common/models.py:3026
+#: common/models.py:3042
msgid "Track Click"
msgstr "追蹤點擊"
-#: common/models.py:3029 common/models.py:3132
+#: common/models.py:3045 common/models.py:3148
msgid "Global ID"
msgstr "全域 ID"
-#: common/models.py:3042
+#: common/models.py:3058
msgid "Identifier for this message (might be supplied by external system)"
msgstr "此訊息的識別碼(可能由外部系統提供)"
-#: common/models.py:3049
+#: common/models.py:3065
msgid "Thread ID"
msgstr "討論串 ID"
-#: common/models.py:3051
+#: common/models.py:3067
msgid "Identifier for this message thread (might be supplied by external system)"
msgstr "此訊息討論串的識別碼(可能由外部系統提供)"
-#: common/models.py:3060
+#: common/models.py:3076
msgid "Thread"
msgstr "討論串"
-#: common/models.py:3061
+#: common/models.py:3077
msgid "Linked thread for this message"
msgstr "此訊息所連結的討論串"
-#: common/models.py:3077
+#: common/models.py:3093
msgid "Priority"
msgstr ""
-#: common/models.py:3119
+#: common/models.py:3135
msgid "Email Thread"
msgstr "電子郵件討論串"
-#: common/models.py:3120
+#: common/models.py:3136
msgid "Email Threads"
msgstr "電子郵件討論串"
-#: common/models.py:3126 generic/states/serializers.py:16
+#: common/models.py:3142 generic/states/serializers.py:16
#: machine/serializers.py:24 plugin/models.py:46 users/models.py:113
msgid "Key"
msgstr "鍵"
-#: common/models.py:3129
+#: common/models.py:3145
msgid "Unique key for this thread (used to identify the thread)"
msgstr "此討論串的唯一鍵(用於辨識)"
-#: common/models.py:3133
+#: common/models.py:3149
msgid "Unique identifier for this thread"
msgstr "此討論串的唯一識別碼"
-#: common/models.py:3140
+#: common/models.py:3156
msgid "Started Internal"
msgstr "內部建立"
-#: common/models.py:3141
+#: common/models.py:3157
msgid "Was this thread started internally?"
msgstr "此討論串是否為內部建立?"
-#: common/models.py:3146
+#: common/models.py:3162
msgid "Date and time that the thread was created"
msgstr "討論串建立的日期時間"
-#: common/models.py:3151
+#: common/models.py:3167
msgid "Date and time that the thread was last updated"
msgstr "討論串最後更新的日期時間"
@@ -2339,7 +2335,7 @@ msgstr "{verbose_name} 已取消"
msgid "A order that is assigned to you was canceled"
msgstr "分配給您的訂單已取消"
-#: common/notifications.py:73 common/notifications.py:80 order/api.py:600
+#: common/notifications.py:73 common/notifications.py:80 order/api.py:598
msgid "Items Received"
msgstr "收到的物品"
@@ -2351,93 +2347,101 @@ msgstr "已根據採購訂單收到物品"
msgid "Items have been received against a return order"
msgstr "已收到退貨訂單中的物品"
-#: common/serializers.py:149
+#: common/serializers.py:125
+msgid "Indicates if changing this setting requires confirmation"
+msgstr ""
+
+#: common/serializers.py:139
+msgid "This setting requires confirmation before changing. Please confirm the change."
+msgstr ""
+
+#: common/serializers.py:172
msgid "Indicates if the setting is overridden by an environment variable"
msgstr "表示此設定是否被環境變數覆蓋"
-#: common/serializers.py:151
+#: common/serializers.py:174
msgid "Override"
msgstr "覆蓋"
-#: common/serializers.py:502
+#: common/serializers.py:529
msgid "Is Running"
msgstr "正在運行"
-#: common/serializers.py:508
+#: common/serializers.py:535
msgid "Pending Tasks"
msgstr "等待完成的任務"
-#: common/serializers.py:514
+#: common/serializers.py:541
msgid "Scheduled Tasks"
msgstr "預定的任務"
-#: common/serializers.py:520
+#: common/serializers.py:547
msgid "Failed Tasks"
msgstr "失敗的任務"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Task ID"
msgstr "任務ID"
-#: common/serializers.py:535
+#: common/serializers.py:562
msgid "Unique task ID"
msgstr "唯一任務ID"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock"
msgstr "鎖定"
-#: common/serializers.py:537
+#: common/serializers.py:564
msgid "Lock time"
msgstr "鎖定時間"
-#: common/serializers.py:539
+#: common/serializers.py:566
msgid "Task name"
msgstr "任務名稱"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function"
msgstr "功能"
-#: common/serializers.py:541
+#: common/serializers.py:568
msgid "Function name"
msgstr "功能名稱"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Arguments"
msgstr "參數"
-#: common/serializers.py:543
+#: common/serializers.py:570
msgid "Task arguments"
msgstr "任務參數"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Keyword Arguments"
msgstr "關鍵字參數"
-#: common/serializers.py:546
+#: common/serializers.py:573
msgid "Task keyword arguments"
msgstr "任務關鍵詞參數"
-#: common/serializers.py:656
+#: common/serializers.py:683
msgid "Filename"
msgstr "檔案名稱"
-#: common/serializers.py:663 common/serializers.py:730
-#: common/serializers.py:805 importer/models.py:89 report/api.py:41
+#: common/serializers.py:690 common/serializers.py:757
+#: common/serializers.py:832 importer/models.py:89 report/api.py:41
#: report/models.py:293 report/serializers.py:52
msgid "Model Type"
msgstr "模型類型"
-#: common/serializers.py:691
+#: common/serializers.py:718
msgid "User does not have permission to create or edit attachments for this model"
msgstr "用户無權為此模式創建或編輯附件"
-#: common/serializers.py:786
+#: common/serializers.py:813
msgid "User does not have permission to create or edit parameters for this model"
msgstr ""
-#: common/serializers.py:850 common/serializers.py:953
+#: common/serializers.py:883 common/serializers.py:986
msgid "Selection list is locked"
msgstr "選擇列表已鎖定"
@@ -2445,1128 +2449,1132 @@ msgstr "選擇列表已鎖定"
msgid "No group"
msgstr "無分組"
-#: common/setting/system.py:155
+#: common/setting/system.py:169
msgid "Site URL is locked by configuration"
msgstr "網站 URL 已配置為鎖定"
-#: common/setting/system.py:172
+#: common/setting/system.py:186
msgid "Restart required"
msgstr "需要重啓"
-#: common/setting/system.py:173
+#: common/setting/system.py:187
msgid "A setting has been changed which requires a server restart"
msgstr "設置已更改,需要服務器重啓"
-#: common/setting/system.py:179
+#: common/setting/system.py:193
msgid "Pending migrations"
msgstr "等待遷移"
-#: common/setting/system.py:180
+#: common/setting/system.py:194
msgid "Number of pending database migrations"
msgstr "待處理的數據庫遷移數"
-#: common/setting/system.py:185
+#: common/setting/system.py:199
msgid "Active warning codes"
msgstr "啟用中的警告碼"
-#: common/setting/system.py:186
+#: common/setting/system.py:200
msgid "A dict of active warning codes"
msgstr "啟用中警告碼的字典"
-#: common/setting/system.py:192
+#: common/setting/system.py:206
msgid "Instance ID"
msgstr "實例 ID"
-#: common/setting/system.py:193
+#: common/setting/system.py:207
msgid "Unique identifier for this InvenTree instance"
msgstr "此 InvenTree 實例的唯一識別碼"
-#: common/setting/system.py:198
+#: common/setting/system.py:212
msgid "Announce ID"
msgstr "公告 ID"
-#: common/setting/system.py:200
+#: common/setting/system.py:214
msgid "Announce the instance ID of the server in the server status info (unauthenticated)"
msgstr "在伺服器狀態資訊中公告此伺服器的實例 ID(未驗證也可見)"
-#: common/setting/system.py:206
+#: common/setting/system.py:220
msgid "Server Instance Name"
msgstr "服務器實例名稱"
-#: common/setting/system.py:208
+#: common/setting/system.py:222
msgid "String descriptor for the server instance"
msgstr "服務器實例的字符串描述符"
-#: common/setting/system.py:212
+#: common/setting/system.py:226
msgid "Use instance name"
msgstr "使用實例名稱"
-#: common/setting/system.py:213
+#: common/setting/system.py:227
msgid "Use the instance name in the title-bar"
msgstr "在標題欄中使用實例名稱"
-#: common/setting/system.py:218
+#: common/setting/system.py:232
msgid "Restrict showing `about`"
msgstr "限制顯示 `關於` 信息"
-#: common/setting/system.py:219
+#: common/setting/system.py:233
msgid "Show the `about` modal only to superusers"
msgstr "只向超級管理員顯示關於信息"
-#: common/setting/system.py:224 company/models.py:145 company/models.py:146
+#: common/setting/system.py:238 company/models.py:145 company/models.py:146
msgid "Company name"
msgstr "公司名稱"
-#: common/setting/system.py:225
+#: common/setting/system.py:239
msgid "Internal company name"
msgstr "內部公司名稱"
-#: common/setting/system.py:229
+#: common/setting/system.py:243
msgid "Base URL"
msgstr "基本 URL"
-#: common/setting/system.py:230
+#: common/setting/system.py:244
msgid "Base URL for server instance"
msgstr "服務器實例的基準 URL"
-#: common/setting/system.py:236
+#: common/setting/system.py:250
msgid "Default Currency"
msgstr "默認貨幣單位"
-#: common/setting/system.py:237
+#: common/setting/system.py:251
msgid "Select base currency for pricing calculations"
msgstr "選擇價格計算的默認貨幣"
-#: common/setting/system.py:243
+#: common/setting/system.py:257
msgid "Supported Currencies"
msgstr "支持幣種"
-#: common/setting/system.py:244
+#: common/setting/system.py:258
msgid "List of supported currency codes"
msgstr "支持的貨幣代碼列表"
-#: common/setting/system.py:250
+#: common/setting/system.py:264
msgid "Currency Update Interval"
msgstr "貨幣更新間隔時間"
-#: common/setting/system.py:251
+#: common/setting/system.py:265
msgid "How often to update exchange rates (set to zero to disable)"
msgstr "檢查更新的頻率(設置為零以禁用)"
-#: common/setting/system.py:253 common/setting/system.py:293
-#: common/setting/system.py:306 common/setting/system.py:314
-#: common/setting/system.py:321 common/setting/system.py:330
-#: common/setting/system.py:339 common/setting/system.py:580
-#: common/setting/system.py:608 common/setting/system.py:707
-#: common/setting/system.py:1103 common/setting/system.py:1119
+#: common/setting/system.py:267 common/setting/system.py:307
+#: common/setting/system.py:320 common/setting/system.py:328
+#: common/setting/system.py:335 common/setting/system.py:344
+#: common/setting/system.py:353 common/setting/system.py:594
+#: common/setting/system.py:622 common/setting/system.py:721
+#: common/setting/system.py:1122 common/setting/system.py:1138
msgid "days"
msgstr "天"
-#: common/setting/system.py:257
+#: common/setting/system.py:271
msgid "Currency Update Plugin"
msgstr "幣種更新插件"
-#: common/setting/system.py:258
+#: common/setting/system.py:272
msgid "Currency update plugin to use"
msgstr "使用貨幣更新插件"
-#: common/setting/system.py:263
+#: common/setting/system.py:277
msgid "Download from URL"
msgstr "從URL下載"
-#: common/setting/system.py:264
+#: common/setting/system.py:278
msgid "Allow download of remote images and files from external URL"
msgstr "允許從外部 URL 下載遠程圖片和文件"
-#: common/setting/system.py:269
+#: common/setting/system.py:283
msgid "Download Size Limit"
msgstr "下載大小限制"
-#: common/setting/system.py:270
+#: common/setting/system.py:284
msgid "Maximum allowable download size for remote image"
msgstr "遠程圖片的最大允許下載大小"
-#: common/setting/system.py:276
+#: common/setting/system.py:290
msgid "User-agent used to download from URL"
msgstr "用於從 URL 下載的 User-agent"
-#: common/setting/system.py:278
+#: common/setting/system.py:292
msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)"
msgstr "允許覆蓋用於從外部 URL 下載圖片和文件的 user-agent(留空為默認值)"
-#: common/setting/system.py:283
+#: common/setting/system.py:297
msgid "Strict URL Validation"
msgstr "嚴格的 URL 驗證"
-#: common/setting/system.py:284
+#: common/setting/system.py:298
msgid "Require schema specification when validating URLs"
msgstr "驗證 URL 時需要 schema 規範"
-#: common/setting/system.py:289
+#: common/setting/system.py:303
msgid "Update Check Interval"
msgstr "更新檢查間隔"
-#: common/setting/system.py:290
+#: common/setting/system.py:304
msgid "How often to check for updates (set to zero to disable)"
msgstr "檢查更新的頻率(設置為零以禁用)"
-#: common/setting/system.py:296
+#: common/setting/system.py:310
msgid "Automatic Backup"
msgstr "自動備份"
-#: common/setting/system.py:297
+#: common/setting/system.py:311
msgid "Enable automatic backup of database and media files"
msgstr "啟動資料庫和媒體文件自動備份"
-#: common/setting/system.py:302
+#: common/setting/system.py:316
msgid "Auto Backup Interval"
msgstr "自動備份間隔"
-#: common/setting/system.py:303
+#: common/setting/system.py:317
msgid "Specify number of days between automated backup events"
msgstr "指定自動備份之間的間隔天數"
-#: common/setting/system.py:309
+#: common/setting/system.py:323
msgid "Task Deletion Interval"
msgstr "任務刪除間隔"
-#: common/setting/system.py:311
+#: common/setting/system.py:325
msgid "Background task results will be deleted after specified number of days"
msgstr "後台任務結果將在指定天數後刪除"
-#: common/setting/system.py:318
+#: common/setting/system.py:332
msgid "Error Log Deletion Interval"
msgstr "錯誤日誌刪除間隔"
-#: common/setting/system.py:319
+#: common/setting/system.py:333
msgid "Error logs will be deleted after specified number of days"
msgstr "錯誤日誌將在指定天數後被刪除"
-#: common/setting/system.py:325
+#: common/setting/system.py:339
msgid "Notification Deletion Interval"
msgstr "通知刪除間隔"
-#: common/setting/system.py:327
+#: common/setting/system.py:341
msgid "User notifications will be deleted after specified number of days"
msgstr "用户通知將在指定天數後被刪除"
-#: common/setting/system.py:334
+#: common/setting/system.py:348
msgid "Email Deletion Interval"
msgstr "電子郵件刪除間隔"
-#: common/setting/system.py:336
+#: common/setting/system.py:350
msgid "Email messages will be deleted after specified number of days"
msgstr "電子郵件訊息將在指定天數後刪除"
-#: common/setting/system.py:343
+#: common/setting/system.py:357
msgid "Protect Email Log"
msgstr "保護電子郵件日誌"
-#: common/setting/system.py:344
+#: common/setting/system.py:358
msgid "Prevent deletion of email log entries"
msgstr "防止刪除電子郵件日誌紀錄"
-#: common/setting/system.py:349
+#: common/setting/system.py:363
msgid "Barcode Support"
msgstr "條形碼支持"
-#: common/setting/system.py:350
+#: common/setting/system.py:364
msgid "Enable barcode scanner support in the web interface"
msgstr "在網頁界面啓用條形碼掃描器支持"
-#: common/setting/system.py:355
+#: common/setting/system.py:369
msgid "Store Barcode Results"
msgstr "存儲條碼結果"
-#: common/setting/system.py:356
+#: common/setting/system.py:370
msgid "Store barcode scan results in the database"
msgstr "存儲條碼掃描結果"
-#: common/setting/system.py:361
+#: common/setting/system.py:375
msgid "Barcode Scans Maximum Count"
msgstr "條碼掃描最大計數"
-#: common/setting/system.py:362
+#: common/setting/system.py:376
msgid "Maximum number of barcode scan results to store"
msgstr "存儲條碼掃描結果的最大數量"
-#: common/setting/system.py:367
+#: common/setting/system.py:381
msgid "Barcode Input Delay"
msgstr "條形碼掃描延遲設置"
-#: common/setting/system.py:368
+#: common/setting/system.py:382
msgid "Barcode input processing delay time"
msgstr "條形碼輸入處理延遲時間"
-#: common/setting/system.py:374
+#: common/setting/system.py:388
msgid "Barcode Webcam Support"
msgstr "條碼攝像頭支持"
-#: common/setting/system.py:375
+#: common/setting/system.py:389
msgid "Allow barcode scanning via webcam in browser"
msgstr "允許通過網絡攝像頭掃描條形碼"
-#: common/setting/system.py:380
+#: common/setting/system.py:394
msgid "Barcode Show Data"
msgstr "條形碼顯示數據"
-#: common/setting/system.py:381
+#: common/setting/system.py:395
msgid "Display barcode data in browser as text"
msgstr "在瀏覽器中將條形碼數據顯示為文本"
-#: common/setting/system.py:386
+#: common/setting/system.py:400
msgid "Barcode Generation Plugin"
msgstr "條形碼生成插件"
-#: common/setting/system.py:387
+#: common/setting/system.py:401
msgid "Plugin to use for internal barcode data generation"
msgstr "用於內部條形碼數據生成的插件"
-#: common/setting/system.py:392
+#: common/setting/system.py:406
msgid "Part Revisions"
msgstr "零件修訂"
-#: common/setting/system.py:393
+#: common/setting/system.py:407
msgid "Enable revision field for Part"
msgstr "啓用零件修訂字段"
-#: common/setting/system.py:398
+#: common/setting/system.py:412
msgid "Assembly Revision Only"
msgstr "僅限裝配修訂版本"
-#: common/setting/system.py:399
+#: common/setting/system.py:413
msgid "Only allow revisions for assembly parts"
msgstr "僅允許對裝配零件進行修訂"
-#: common/setting/system.py:404
+#: common/setting/system.py:418
msgid "Allow Deletion from Assembly"
msgstr "允許從裝配中刪除"
-#: common/setting/system.py:405
+#: common/setting/system.py:419
msgid "Allow deletion of parts which are used in an assembly"
msgstr "允許刪除已在裝配中使用的零件"
-#: common/setting/system.py:410
+#: common/setting/system.py:424
msgid "IPN Regex"
msgstr "IPN 內部零件號"
-#: common/setting/system.py:411
+#: common/setting/system.py:425
msgid "Regular expression pattern for matching Part IPN"
msgstr "匹配零件 IPN(內部零件號)的正則表達式模式"
-#: common/setting/system.py:414
+#: common/setting/system.py:428
msgid "Allow Duplicate IPN"
msgstr "允許重複的 IPN(內部零件號)"
-#: common/setting/system.py:415
+#: common/setting/system.py:429
msgid "Allow multiple parts to share the same IPN"
msgstr "允許多個零件共享相同的 IPN(內部零件號)"
-#: common/setting/system.py:420
+#: common/setting/system.py:434
msgid "Allow Editing IPN"
msgstr "允許編輯 IPN(內部零件號)"
-#: common/setting/system.py:421
+#: common/setting/system.py:435
msgid "Allow changing the IPN value while editing a part"
msgstr "允許編輯零件時更改內部零件號"
-#: common/setting/system.py:426
+#: common/setting/system.py:440
msgid "Copy Part BOM Data"
msgstr "複製零件物料清單數據"
-#: common/setting/system.py:427
+#: common/setting/system.py:441
msgid "Copy BOM data by default when duplicating a part"
msgstr "複製零件時默認複製物料清單數據"
-#: common/setting/system.py:432
+#: common/setting/system.py:446
msgid "Copy Part Parameter Data"
msgstr "複製零件參數數據"
-#: common/setting/system.py:433
+#: common/setting/system.py:447
msgid "Copy parameter data by default when duplicating a part"
msgstr "複製零件時默認複製參數數據"
-#: common/setting/system.py:438
+#: common/setting/system.py:452
msgid "Copy Part Test Data"
msgstr "複製零件測試數據"
-#: common/setting/system.py:439
+#: common/setting/system.py:453
msgid "Copy test data by default when duplicating a part"
msgstr "複製零件時默認複製測試數據"
-#: common/setting/system.py:444
+#: common/setting/system.py:458
msgid "Copy Category Parameter Templates"
msgstr "複製類別參數模板"
-#: common/setting/system.py:445
+#: common/setting/system.py:459
msgid "Copy category parameter templates when creating a part"
msgstr "創建零件時複製類別參數模板"
-#: common/setting/system.py:451
+#: common/setting/system.py:465
msgid "Parts are templates by default"
msgstr "零件默認為模板"
-#: common/setting/system.py:457
+#: common/setting/system.py:471
msgid "Parts can be assembled from other components by default"
msgstr "默認情況下,元件可由其他零件組裝而成"
-#: common/setting/system.py:462 part/models.py:1296 part/serializers.py:1599
-#: part/serializers.py:1606
+#: common/setting/system.py:476 part/models.py:1277 part/serializers.py:1588
+#: part/serializers.py:1595
msgid "Component"
msgstr "組件"
-#: common/setting/system.py:463
+#: common/setting/system.py:477
msgid "Parts can be used as sub-components by default"
msgstr "默認情況下,零件可用作子部件"
-#: common/setting/system.py:468 part/models.py:1314
+#: common/setting/system.py:482 part/models.py:1295
msgid "Purchaseable"
msgstr "可購買"
-#: common/setting/system.py:469
+#: common/setting/system.py:483
msgid "Parts are purchaseable by default"
msgstr "默認情況下可購買零件"
-#: common/setting/system.py:474 part/models.py:1320 stock/api.py:643
+#: common/setting/system.py:488 part/models.py:1301 stock/api.py:643
msgid "Salable"
msgstr "可銷售"
-#: common/setting/system.py:475
+#: common/setting/system.py:489
msgid "Parts are salable by default"
msgstr "零件默認為可銷售"
-#: common/setting/system.py:481
+#: common/setting/system.py:495
msgid "Parts are trackable by default"
msgstr "默認情況下可跟蹤零件"
-#: common/setting/system.py:486 part/models.py:1336
+#: common/setting/system.py:500 part/models.py:1317
msgid "Virtual"
msgstr "虛擬的"
-#: common/setting/system.py:487
+#: common/setting/system.py:501
msgid "Parts are virtual by default"
msgstr "默認情況下,零件是虛擬的"
-#: common/setting/system.py:492
+#: common/setting/system.py:506
msgid "Show related parts"
msgstr "顯示相關零件"
-#: common/setting/system.py:493
+#: common/setting/system.py:507
msgid "Display related parts for a part"
msgstr "顯示零件的相關零件"
-#: common/setting/system.py:498
+#: common/setting/system.py:512
msgid "Initial Stock Data"
msgstr "初始庫存數據"
-#: common/setting/system.py:499
+#: common/setting/system.py:513
msgid "Allow creation of initial stock when adding a new part"
msgstr "允許在添加新零件時創建初始庫存"
-#: common/setting/system.py:504
+#: common/setting/system.py:518
msgid "Initial Supplier Data"
msgstr "初始供應商數據"
-#: common/setting/system.py:506
+#: common/setting/system.py:520
msgid "Allow creation of initial supplier data when adding a new part"
msgstr "允許在添加新零件時創建初始供應商數據"
-#: common/setting/system.py:512
+#: common/setting/system.py:526
msgid "Part Name Display Format"
msgstr "零件名稱顯示格式"
-#: common/setting/system.py:513
+#: common/setting/system.py:527
msgid "Format to display the part name"
msgstr "顯示零件名稱的格式"
-#: common/setting/system.py:519
+#: common/setting/system.py:533
msgid "Part Category Default Icon"
msgstr "零件類別默認圖標"
-#: common/setting/system.py:520
+#: common/setting/system.py:534
msgid "Part category default icon (empty means no icon)"
msgstr "零件類別默認圖標 (空表示沒有圖標)"
-#: common/setting/system.py:525
+#: common/setting/system.py:539
msgid "Minimum Pricing Decimal Places"
msgstr "最小定價小數位數"
-#: common/setting/system.py:527
+#: common/setting/system.py:541
msgid "Minimum number of decimal places to display when rendering pricing data"
msgstr "呈現定價數據時顯示的最小小數位數"
-#: common/setting/system.py:538
+#: common/setting/system.py:552
msgid "Maximum Pricing Decimal Places"
msgstr "最大定價小數位數"
-#: common/setting/system.py:540
+#: common/setting/system.py:554
msgid "Maximum number of decimal places to display when rendering pricing data"
msgstr "呈現定價數據時顯示的最大小數位數"
-#: common/setting/system.py:551
+#: common/setting/system.py:565
msgid "Use Supplier Pricing"
msgstr "使用供應商定價"
-#: common/setting/system.py:553
+#: common/setting/system.py:567
msgid "Include supplier price breaks in overall pricing calculations"
msgstr "將供應商的價批發價納入總體定價計算中"
-#: common/setting/system.py:559
+#: common/setting/system.py:573
msgid "Purchase History Override"
msgstr "購買歷史記錄覆蓋"
-#: common/setting/system.py:561
+#: common/setting/system.py:575
msgid "Historical purchase order pricing overrides supplier price breaks"
msgstr "歷史採購訂單定價優先於供應商批發價"
-#: common/setting/system.py:567
+#: common/setting/system.py:581
msgid "Use Stock Item Pricing"
msgstr "使用庫存項定價"
-#: common/setting/system.py:569
+#: common/setting/system.py:583
msgid "Use pricing from manually entered stock data for pricing calculations"
msgstr "使用手動輸入的庫存數據進行定價計算"
-#: common/setting/system.py:575
+#: common/setting/system.py:589
msgid "Stock Item Pricing Age"
msgstr "庫存項目定價時間"
-#: common/setting/system.py:577
+#: common/setting/system.py:591
msgid "Exclude stock items older than this number of days from pricing calculations"
msgstr "從定價計算中排除超過此天數的庫存項目"
-#: common/setting/system.py:584
+#: common/setting/system.py:598
msgid "Use Variant Pricing"
msgstr "使用變體定價"
-#: common/setting/system.py:585
+#: common/setting/system.py:599
msgid "Include variant pricing in overall pricing calculations"
msgstr "在整體定價計算中包括變體定價"
-#: common/setting/system.py:590
+#: common/setting/system.py:604
msgid "Active Variants Only"
msgstr "僅限活躍變體"
-#: common/setting/system.py:592
+#: common/setting/system.py:606
msgid "Only use active variant parts for calculating variant pricing"
msgstr "僅使用活躍變體零件計算變體價格"
-#: common/setting/system.py:598
+#: common/setting/system.py:612
msgid "Auto Update Pricing"
msgstr "自動更新定價"
-#: common/setting/system.py:600
+#: common/setting/system.py:614
msgid "Automatically update part pricing when internal data changes"
msgstr "當內部資料變更時自動更新零件定價"
-#: common/setting/system.py:606
+#: common/setting/system.py:620
msgid "Pricing Rebuild Interval"
msgstr "價格重建間隔"
-#: common/setting/system.py:607
+#: common/setting/system.py:621
msgid "Number of days before part pricing is automatically updated"
msgstr "零件價格自動更新前的天數"
-#: common/setting/system.py:613
+#: common/setting/system.py:627
msgid "Internal Prices"
msgstr "內部價格"
-#: common/setting/system.py:614
+#: common/setting/system.py:628
msgid "Enable internal prices for parts"
msgstr "啓用內部零件價格"
-#: common/setting/system.py:619
+#: common/setting/system.py:633
msgid "Internal Price Override"
msgstr "覆蓋內部價格"
-#: common/setting/system.py:621
+#: common/setting/system.py:635
msgid "If available, internal prices override price range calculations"
msgstr "如果有內部價格,內部價格將覆蓋價格範圍計算"
-#: common/setting/system.py:627
+#: common/setting/system.py:641
msgid "Enable label printing"
msgstr "啓用標籤打印功能"
-#: common/setting/system.py:628
+#: common/setting/system.py:642
msgid "Enable label printing from the web interface"
msgstr "啓用從網絡界面打印標籤"
-#: common/setting/system.py:633
+#: common/setting/system.py:647
msgid "Label Image DPI"
msgstr "標籤圖片 DPI"
-#: common/setting/system.py:635
+#: common/setting/system.py:649
msgid "DPI resolution when generating image files to supply to label printing plugins"
msgstr "生成圖像文件以供標籤打印插件使用時的 DPI 分辨率"
-#: common/setting/system.py:641
+#: common/setting/system.py:655
msgid "Enable Reports"
msgstr "啓用報告"
-#: common/setting/system.py:642
+#: common/setting/system.py:656
msgid "Enable generation of reports"
msgstr "啓用報告生成"
-#: common/setting/system.py:647
+#: common/setting/system.py:661
msgid "Debug Mode"
msgstr "調試模式"
-#: common/setting/system.py:648
+#: common/setting/system.py:662
msgid "Generate reports in debug mode (HTML output)"
msgstr "以調試模式生成報告(HTML 輸出)"
-#: common/setting/system.py:653
+#: common/setting/system.py:667
msgid "Log Report Errors"
msgstr "日誌錯誤報告"
-#: common/setting/system.py:654
+#: common/setting/system.py:668
msgid "Log errors which occur when generating reports"
msgstr "記錄生成報告時出現的錯誤"
-#: common/setting/system.py:659 plugin/builtin/labels/label_sheet.py:29
+#: common/setting/system.py:673 plugin/builtin/labels/label_sheet.py:29
#: report/models.py:381
msgid "Page Size"
msgstr "頁面大小"
-#: common/setting/system.py:660
+#: common/setting/system.py:674
msgid "Default page size for PDF reports"
msgstr "PDF 報告默認頁面大小"
-#: common/setting/system.py:665
+#: common/setting/system.py:679
msgid "Enforce Parameter Units"
msgstr "強制參數單位"
-#: common/setting/system.py:667
+#: common/setting/system.py:681
msgid "If units are provided, parameter values must match the specified units"
msgstr "如果提供了單位,參數值必須與指定的單位匹配"
-#: common/setting/system.py:673
+#: common/setting/system.py:687
msgid "Globally Unique Serials"
msgstr "全局唯一序列號"
-#: common/setting/system.py:674
+#: common/setting/system.py:688
msgid "Serial numbers for stock items must be globally unique"
msgstr "庫存項的序列號必須全局唯一"
-#: common/setting/system.py:679
+#: common/setting/system.py:693
msgid "Delete Depleted Stock"
msgstr "刪除已耗盡的庫存"
-#: common/setting/system.py:680
+#: common/setting/system.py:694
msgid "Determines default behavior when a stock item is depleted"
msgstr "設置庫存耗盡時的默認行為"
-#: common/setting/system.py:685
+#: common/setting/system.py:699
msgid "Batch Code Template"
msgstr "批號模板"
-#: common/setting/system.py:686
+#: common/setting/system.py:700
msgid "Template for generating default batch codes for stock items"
msgstr "為庫存項生成默認批號的模板"
-#: common/setting/system.py:690
+#: common/setting/system.py:704
msgid "Stock Expiry"
msgstr "庫存過期"
-#: common/setting/system.py:691
+#: common/setting/system.py:705
msgid "Enable stock expiry functionality"
msgstr "啓用庫存過期功能"
-#: common/setting/system.py:696
+#: common/setting/system.py:710
msgid "Sell Expired Stock"
msgstr "銷售過期庫存"
-#: common/setting/system.py:697
+#: common/setting/system.py:711
msgid "Allow sale of expired stock"
msgstr "允許銷售過期庫存"
-#: common/setting/system.py:702
+#: common/setting/system.py:716
msgid "Stock Stale Time"
msgstr "庫存過期時間"
-#: common/setting/system.py:704
+#: common/setting/system.py:718
msgid "Number of days stock items are considered stale before expiring"
msgstr "庫存項在到期前被視為過期的天數"
-#: common/setting/system.py:711
+#: common/setting/system.py:725
msgid "Build Expired Stock"
msgstr "生產過期庫存"
-#: common/setting/system.py:712
+#: common/setting/system.py:726
msgid "Allow building with expired stock"
msgstr "允許用過期的庫存生產"
-#: common/setting/system.py:717
+#: common/setting/system.py:731
msgid "Stock Ownership Control"
msgstr "庫存所有權控制"
-#: common/setting/system.py:718
+#: common/setting/system.py:732
msgid "Enable ownership control over stock locations and items"
msgstr "啓用庫存地點和項目的所有權控制"
-#: common/setting/system.py:723
+#: common/setting/system.py:737
msgid "Stock Location Default Icon"
msgstr "庫存地點默認圖標"
-#: common/setting/system.py:724
+#: common/setting/system.py:738
msgid "Stock location default icon (empty means no icon)"
msgstr "庫存地點默認圖標 (空表示沒有圖標)"
-#: common/setting/system.py:729
+#: common/setting/system.py:743
msgid "Show Installed Stock Items"
msgstr "顯示已安裝的庫存項"
-#: common/setting/system.py:730
+#: common/setting/system.py:744
msgid "Display installed stock items in stock tables"
msgstr "在庫存表中顯示已安裝的庫存項"
-#: common/setting/system.py:735
+#: common/setting/system.py:749
msgid "Check BOM when installing items"
msgstr "在安裝項目時檢查物料清單"
-#: common/setting/system.py:737
+#: common/setting/system.py:751
msgid "Installed stock items must exist in the BOM for the parent part"
msgstr "已安裝的庫存項目必須存在於上級零件的物料清單中"
-#: common/setting/system.py:743
+#: common/setting/system.py:757
msgid "Allow Out of Stock Transfer"
msgstr "允許超出庫存轉移"
-#: common/setting/system.py:745
+#: common/setting/system.py:759
msgid "Allow stock items which are not in stock to be transferred between stock locations"
msgstr "允許非庫存的庫存項目在庫存位置之間轉移"
-#: common/setting/system.py:751
+#: common/setting/system.py:765
msgid "Build Order Reference Pattern"
msgstr "生產訂單參考模式"
-#: common/setting/system.py:752
+#: common/setting/system.py:766
msgid "Required pattern for generating Build Order reference field"
msgstr "生成生產訂單參考字段所需的模式"
-#: common/setting/system.py:757 common/setting/system.py:817
-#: common/setting/system.py:837 common/setting/system.py:881
+#: common/setting/system.py:771 common/setting/system.py:831
+#: common/setting/system.py:851 common/setting/system.py:895
msgid "Require Responsible Owner"
msgstr "要求負責人"
-#: common/setting/system.py:758 common/setting/system.py:818
-#: common/setting/system.py:838 common/setting/system.py:882
+#: common/setting/system.py:772 common/setting/system.py:832
+#: common/setting/system.py:852 common/setting/system.py:896
msgid "A responsible owner must be assigned to each order"
msgstr "必須為每個訂單分配一個負責人"
-#: common/setting/system.py:763
+#: common/setting/system.py:777
msgid "Require Active Part"
msgstr "需要活動零件"
-#: common/setting/system.py:764
+#: common/setting/system.py:778
msgid "Prevent build order creation for inactive parts"
msgstr "防止為非活動零件創建生產訂單"
-#: common/setting/system.py:769
+#: common/setting/system.py:783
msgid "Require Locked Part"
msgstr "需要鎖定零件"
-#: common/setting/system.py:770
+#: common/setting/system.py:784
msgid "Prevent build order creation for unlocked parts"
msgstr "防止為未鎖定的零件創建生產訂單"
-#: common/setting/system.py:775
+#: common/setting/system.py:789
msgid "Require Valid BOM"
msgstr "需要有效的物料清單"
-#: common/setting/system.py:776
+#: common/setting/system.py:790
msgid "Prevent build order creation unless BOM has been validated"
msgstr "除非物料清單已驗證,否則禁止創建生產訂單"
-#: common/setting/system.py:781
+#: common/setting/system.py:795
msgid "Require Closed Child Orders"
msgstr "需要關閉子訂單"
-#: common/setting/system.py:783
+#: common/setting/system.py:797
msgid "Prevent build order completion until all child orders are closed"
msgstr "在所有子訂單關閉之前,阻止生產訂單的完成"
-#: common/setting/system.py:789
+#: common/setting/system.py:803
msgid "External Build Orders"
msgstr "外部生產工單"
-#: common/setting/system.py:790
+#: common/setting/system.py:804
msgid "Enable external build order functionality"
msgstr "啟用外部生產工單功能"
-#: common/setting/system.py:795
+#: common/setting/system.py:809
msgid "Block Until Tests Pass"
msgstr "阻止直到測試通過"
-#: common/setting/system.py:797
+#: common/setting/system.py:811
msgid "Prevent build outputs from being completed until all required tests pass"
msgstr "在所有必要的測試通過之前,阻止產出完成"
-#: common/setting/system.py:803
+#: common/setting/system.py:817
msgid "Enable Return Orders"
msgstr "啓用訂單退貨"
-#: common/setting/system.py:804
+#: common/setting/system.py:818
msgid "Enable return order functionality in the user interface"
msgstr "在用户界面中啓用訂單退貨功能"
-#: common/setting/system.py:809
+#: common/setting/system.py:823
msgid "Return Order Reference Pattern"
msgstr "退貨訂單參考模式"
-#: common/setting/system.py:811
+#: common/setting/system.py:825
msgid "Required pattern for generating Return Order reference field"
msgstr "生成退貨訂單參考字段所需的模式"
-#: common/setting/system.py:823
+#: common/setting/system.py:837
msgid "Edit Completed Return Orders"
msgstr "編輯已完成的退貨訂單"
-#: common/setting/system.py:825
+#: common/setting/system.py:839
msgid "Allow editing of return orders after they have been completed"
msgstr "允許編輯已完成的退貨訂單"
-#: common/setting/system.py:831
+#: common/setting/system.py:845
msgid "Sales Order Reference Pattern"
msgstr "銷售訂單參考模式"
-#: common/setting/system.py:832
+#: common/setting/system.py:846
msgid "Required pattern for generating Sales Order reference field"
msgstr "生成銷售訂單參考字段所需參照模式"
-#: common/setting/system.py:843
+#: common/setting/system.py:857
msgid "Sales Order Default Shipment"
msgstr "銷售訂單默認配送方式"
-#: common/setting/system.py:844
+#: common/setting/system.py:858
msgid "Enable creation of default shipment with sales orders"
msgstr "啓用創建銷售訂單的默認配送功能"
-#: common/setting/system.py:849
+#: common/setting/system.py:863
msgid "Edit Completed Sales Orders"
msgstr "編輯已完成的銷售訂單"
-#: common/setting/system.py:851
+#: common/setting/system.py:865
msgid "Allow editing of sales orders after they have been shipped or completed"
msgstr "允許在訂單配送或完成後編輯銷售訂單"
-#: common/setting/system.py:857
+#: common/setting/system.py:871
msgid "Shipment Requires Checking"
msgstr ""
-#: common/setting/system.py:859
+#: common/setting/system.py:873
msgid "Prevent completion of shipments until items have been checked"
msgstr ""
-#: common/setting/system.py:865
+#: common/setting/system.py:879
msgid "Mark Shipped Orders as Complete"
msgstr "標記該訂單為已完成?"
-#: common/setting/system.py:867
+#: common/setting/system.py:881
msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status"
msgstr "標記為已發貨的銷售訂單將自動完成,繞過“已發貨”狀態"
-#: common/setting/system.py:873
+#: common/setting/system.py:887
msgid "Purchase Order Reference Pattern"
msgstr "採購訂單參考模式"
-#: common/setting/system.py:875
+#: common/setting/system.py:889
msgid "Required pattern for generating Purchase Order reference field"
msgstr "生成採購訂單參考字段所需的模式"
-#: common/setting/system.py:887
+#: common/setting/system.py:901
msgid "Edit Completed Purchase Orders"
msgstr "編輯已完成的採購訂單"
-#: common/setting/system.py:889
+#: common/setting/system.py:903
msgid "Allow editing of purchase orders after they have been shipped or completed"
msgstr "允許在採購訂單已配送或完成後編輯訂單"
-#: common/setting/system.py:895
+#: common/setting/system.py:909
msgid "Convert Currency"
msgstr "轉換幣別"
-#: common/setting/system.py:896
+#: common/setting/system.py:910
msgid "Convert item value to base currency when receiving stock"
msgstr "收貨時將項目價值換算為基準幣別"
-#: common/setting/system.py:901
+#: common/setting/system.py:915
msgid "Auto Complete Purchase Orders"
msgstr "自動完成採購訂單"
-#: common/setting/system.py:903
+#: common/setting/system.py:917
msgid "Automatically mark purchase orders as complete when all line items are received"
msgstr "當收到所有行項目時,自動將採購訂單標記為完成"
-#: common/setting/system.py:910
+#: common/setting/system.py:924
msgid "Enable password forgot"
msgstr "忘記啓用密碼"
-#: common/setting/system.py:911
+#: common/setting/system.py:925
msgid "Enable password forgot function on the login pages"
msgstr "在登錄頁面上啓用忘記密碼功能"
-#: common/setting/system.py:916
+#: common/setting/system.py:930
msgid "Enable registration"
msgstr "啓用註冊"
-#: common/setting/system.py:917
+#: common/setting/system.py:931
msgid "Enable self-registration for users on the login pages"
msgstr "在登錄頁面為用户啓用自行註冊功能"
-#: common/setting/system.py:922
+#: common/setting/system.py:936
msgid "Enable SSO"
msgstr "啓用單點登錄"
-#: common/setting/system.py:923
+#: common/setting/system.py:937
msgid "Enable SSO on the login pages"
msgstr "在登錄界面啓用單點登錄"
-#: common/setting/system.py:928
+#: common/setting/system.py:942
msgid "Enable SSO registration"
msgstr "啓用單點登錄註冊"
-#: common/setting/system.py:930
+#: common/setting/system.py:944
msgid "Enable self-registration via SSO for users on the login pages"
msgstr "允許登錄頁面上的用户通過 SSO 進行自我註冊"
-#: common/setting/system.py:936
+#: common/setting/system.py:950
msgid "Enable SSO group sync"
msgstr "啓用單點登錄羣組同步"
-#: common/setting/system.py:938
+#: common/setting/system.py:952
msgid "Enable synchronizing InvenTree groups with groups provided by the IdP"
msgstr "啓用庫存管理系統組和由身份提供者提供的組的同步功能"
-#: common/setting/system.py:944
+#: common/setting/system.py:958
msgid "SSO group key"
msgstr "單點登錄系統組密鑰"
-#: common/setting/system.py:945
+#: common/setting/system.py:959
msgid "The name of the groups claim attribute provided by the IdP"
msgstr "由身份提供者提供的組聲明屬性名稱"
-#: common/setting/system.py:950
+#: common/setting/system.py:964
msgid "SSO group map"
msgstr "單點登錄系統組地圖"
-#: common/setting/system.py:952
+#: common/setting/system.py:966
msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created."
msgstr "從單點登錄系統組組到本地庫存管理系統組的映射。如果本地組不存在,它將被創建。"
-#: common/setting/system.py:958
+#: common/setting/system.py:972
msgid "Remove groups outside of SSO"
msgstr "移除單點登錄系統以外的羣組"
-#: common/setting/system.py:960
+#: common/setting/system.py:974
msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues"
msgstr "如果分配給用户的組不是身份提供者的後端,是否應該刪除它們。禁用此設置可能會造成安全問題"
-#: common/setting/system.py:966
+#: common/setting/system.py:980
msgid "Email required"
msgstr "需要郵箱地址"
-#: common/setting/system.py:967
+#: common/setting/system.py:981
msgid "Require user to supply mail on signup"
msgstr "要求用户在註冊時提供郵件"
-#: common/setting/system.py:972
+#: common/setting/system.py:986
msgid "Auto-fill SSO users"
msgstr "自動填充單點登錄系統用户"
-#: common/setting/system.py:973
+#: common/setting/system.py:987
msgid "Automatically fill out user-details from SSO account-data"
msgstr "自動使用單點登錄系統賬户的數據填寫用户詳細信息"
-#: common/setting/system.py:978
+#: common/setting/system.py:992
msgid "Mail twice"
msgstr "發兩次郵件"
-#: common/setting/system.py:979
+#: common/setting/system.py:993
msgid "On signup ask users twice for their mail"
msgstr "註冊時詢問用户他們的電子郵件兩次"
-#: common/setting/system.py:984
+#: common/setting/system.py:998
msgid "Password twice"
msgstr "兩次輸入密碼"
-#: common/setting/system.py:985
+#: common/setting/system.py:999
msgid "On signup ask users twice for their password"
msgstr "當註冊時請用户輸入密碼兩次"
-#: common/setting/system.py:990
+#: common/setting/system.py:1004
msgid "Allowed domains"
msgstr "域名白名單"
-#: common/setting/system.py:992
+#: common/setting/system.py:1006
msgid "Restrict signup to certain domains (comma-separated, starting with @)"
msgstr "限制註冊到某些域名 (逗號分隔,以 @ 開頭)"
-#: common/setting/system.py:998
+#: common/setting/system.py:1012
msgid "Group on signup"
msgstr "註冊羣組"
-#: common/setting/system.py:1000
+#: common/setting/system.py:1014
msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP."
msgstr "註冊時分配給新用户的組。 如果啓用了單點登錄系統羣組同步,此羣組僅在無法從 IdP 分配任何羣組的情況下才被設置。"
-#: common/setting/system.py:1006
+#: common/setting/system.py:1020
msgid "Enforce MFA"
msgstr "強制啓用多因素安全認證"
-#: common/setting/system.py:1007
+#: common/setting/system.py:1021
msgid "Users must use multifactor security."
msgstr "用户必須使用多因素安全認證。"
-#: common/setting/system.py:1012
+#: common/setting/system.py:1026
+msgid "Enabling this setting will require all users to set up multifactor authentication. All sessions will be disconnected immediately."
+msgstr ""
+
+#: common/setting/system.py:1031
msgid "Check plugins on startup"
msgstr "啓動時檢查插件"
-#: common/setting/system.py:1014
+#: common/setting/system.py:1033
msgid "Check that all plugins are installed on startup - enable in container environments"
msgstr "啓動時檢查全部插件是否已安裝 - 在容器環境中啓用"
-#: common/setting/system.py:1021
+#: common/setting/system.py:1040
msgid "Check for plugin updates"
msgstr "檢查插件更新"
-#: common/setting/system.py:1022
+#: common/setting/system.py:1041
msgid "Enable periodic checks for updates to installed plugins"
msgstr "啓用定期檢查已安裝插件的更新"
-#: common/setting/system.py:1028
+#: common/setting/system.py:1047
msgid "Enable URL integration"
msgstr "啓用統一資源定位符集成"
-#: common/setting/system.py:1029
+#: common/setting/system.py:1048
msgid "Enable plugins to add URL routes"
msgstr "啓用插件以添加統一資源定位符路由"
-#: common/setting/system.py:1035
+#: common/setting/system.py:1054
msgid "Enable navigation integration"
msgstr "啓用導航集成"
-#: common/setting/system.py:1036
+#: common/setting/system.py:1055
msgid "Enable plugins to integrate into navigation"
msgstr "啓用插件以集成到導航中"
-#: common/setting/system.py:1042
+#: common/setting/system.py:1061
msgid "Enable app integration"
msgstr "啓用應用集成"
-#: common/setting/system.py:1043
+#: common/setting/system.py:1062
msgid "Enable plugins to add apps"
msgstr "啓用插件添加應用"
-#: common/setting/system.py:1049
+#: common/setting/system.py:1068
msgid "Enable schedule integration"
msgstr "啓用調度集成"
-#: common/setting/system.py:1050
+#: common/setting/system.py:1069
msgid "Enable plugins to run scheduled tasks"
msgstr "啓用插件來運行預定任務"
-#: common/setting/system.py:1056
+#: common/setting/system.py:1075
msgid "Enable event integration"
msgstr "啓用事件集成"
-#: common/setting/system.py:1057
+#: common/setting/system.py:1076
msgid "Enable plugins to respond to internal events"
msgstr "啓用插件響應內部事件"
-#: common/setting/system.py:1063
+#: common/setting/system.py:1082
msgid "Enable interface integration"
msgstr "啓用界面集成"
-#: common/setting/system.py:1064
+#: common/setting/system.py:1083
msgid "Enable plugins to integrate into the user interface"
msgstr "啓用插件集成到用户界面"
-#: common/setting/system.py:1070
+#: common/setting/system.py:1089
msgid "Enable mail integration"
msgstr "啟用郵件整合"
-#: common/setting/system.py:1071
+#: common/setting/system.py:1090
msgid "Enable plugins to process outgoing/incoming mails"
msgstr "允許模組處理寄出/接收郵件"
-#: common/setting/system.py:1077
+#: common/setting/system.py:1096
msgid "Enable project codes"
msgstr "啟用專案代碼"
-#: common/setting/system.py:1078
+#: common/setting/system.py:1097
msgid "Enable project codes for tracking projects"
msgstr "啟用專案代碼以追蹤專案"
-#: common/setting/system.py:1083
+#: common/setting/system.py:1102
msgid "Enable Stock History"
msgstr "啟用庫存歷史"
-#: common/setting/system.py:1085
+#: common/setting/system.py:1104
msgid "Enable functionality for recording historical stock levels and value"
msgstr "啟用記錄庫存數量及價值歷史的功能"
-#: common/setting/system.py:1091
+#: common/setting/system.py:1110
msgid "Exclude External Locations"
msgstr "排除外部地點"
-#: common/setting/system.py:1093
+#: common/setting/system.py:1112
msgid "Exclude stock items in external locations from stock history calculations"
msgstr "在庫存歷史統計中排除位於外部位置的庫存項目"
-#: common/setting/system.py:1099
+#: common/setting/system.py:1118
msgid "Automatic Stocktake Period"
msgstr "自動盤點週期"
-#: common/setting/system.py:1100
+#: common/setting/system.py:1119
msgid "Number of days between automatic stock history recording"
msgstr "自動記錄庫存歷史的間隔天數"
-#: common/setting/system.py:1106
+#: common/setting/system.py:1125
msgid "Delete Old Stock History Entries"
msgstr "刪除舊庫存歷史記錄"
-#: common/setting/system.py:1108
+#: common/setting/system.py:1127
msgid "Delete stock history entries older than the specified number of days"
msgstr "刪除早於指定天數的庫存歷史記錄"
-#: common/setting/system.py:1114
+#: common/setting/system.py:1133
msgid "Stock History Deletion Interval"
msgstr "庫存歷史刪除週期"
-#: common/setting/system.py:1116
+#: common/setting/system.py:1135
msgid "Stock history entries will be deleted after specified number of days"
msgstr "庫存歷史記錄將於超過指定天數後刪除"
-#: common/setting/system.py:1123
+#: common/setting/system.py:1142
msgid "Display Users full names"
msgstr "顯示用户全名"
-#: common/setting/system.py:1124
+#: common/setting/system.py:1143
msgid "Display Users full names instead of usernames"
msgstr "顯示用户全名而不是用户名"
-#: common/setting/system.py:1129
+#: common/setting/system.py:1148
msgid "Display User Profiles"
msgstr "顯示使用者個人檔案"
-#: common/setting/system.py:1130
+#: common/setting/system.py:1149
msgid "Display Users Profiles on their profile page"
msgstr "在個人頁面顯示使用者檔案資訊"
-#: common/setting/system.py:1135
+#: common/setting/system.py:1154
msgid "Enable Test Station Data"
msgstr "啓用測試站數據"
-#: common/setting/system.py:1136
+#: common/setting/system.py:1155
msgid "Enable test station data collection for test results"
msgstr "啓用測試站數據收集以獲取測試結果"
-#: common/setting/system.py:1141
+#: common/setting/system.py:1160
msgid "Enable Machine Ping"
msgstr ""
-#: common/setting/system.py:1143
+#: common/setting/system.py:1162
msgid "Enable periodic ping task of registered machines to check their status"
msgstr ""
@@ -3911,29 +3919,29 @@ msgstr "零件已激活"
msgid "Manufacturer is Active"
msgstr "製造商處於活動狀態"
-#: company/api.py:246
+#: company/api.py:242
msgid "Supplier Part is Active"
msgstr "供應商零件處於激活狀態"
-#: company/api.py:250
+#: company/api.py:246
msgid "Internal Part is Active"
msgstr "內部零件已激活"
-#: company/api.py:255
+#: company/api.py:251
msgid "Supplier is Active"
msgstr "供應商已激活"
-#: company/api.py:267 company/models.py:522 company/serializers.py:502
+#: company/api.py:263 company/models.py:528 company/serializers.py:454
#: part/serializers.py:477
msgid "Manufacturer"
msgstr "製造商"
-#: company/api.py:274 company/models.py:122 company/models.py:393
+#: company/api.py:270 company/models.py:122 company/models.py:399
#: stock/api.py:900
msgid "Company"
msgstr "公司"
-#: company/api.py:284
+#: company/api.py:280
msgid "Has Stock"
msgstr "有庫存"
@@ -3969,7 +3977,7 @@ msgstr "聯繫電話"
msgid "Contact email address"
msgstr "聯繫人電子郵箱地址"
-#: company/models.py:179 company/models.py:297 order/models.py:514
+#: company/models.py:179 company/models.py:303 order/models.py:515
#: users/models.py:561
msgid "Contact"
msgstr "聯繫人"
@@ -4022,255 +4030,247 @@ msgstr "稅籍編號"
msgid "Company Tax ID"
msgstr "公司稅籍編號"
-#: company/models.py:336 order/models.py:524 order/models.py:2289
+#: company/models.py:342 order/models.py:525 order/models.py:2289
msgid "Address"
msgstr "地址"
-#: company/models.py:337
+#: company/models.py:343
msgid "Addresses"
msgstr "地址"
-#: company/models.py:394
+#: company/models.py:400
msgid "Select company"
msgstr "選擇公司"
-#: company/models.py:399
+#: company/models.py:405
msgid "Address title"
msgstr "地址標題"
-#: company/models.py:400
+#: company/models.py:406
msgid "Title describing the address entry"
msgstr "描述地址條目的標題"
-#: company/models.py:406
+#: company/models.py:412
msgid "Primary address"
msgstr "主要地址"
-#: company/models.py:407
+#: company/models.py:413
msgid "Set as primary address"
msgstr "設置主要地址"
-#: company/models.py:412
+#: company/models.py:418
msgid "Line 1"
msgstr "第1行"
-#: company/models.py:413
+#: company/models.py:419
msgid "Address line 1"
msgstr "地址行1"
-#: company/models.py:419
+#: company/models.py:425
msgid "Line 2"
msgstr "第2行"
-#: company/models.py:420
+#: company/models.py:426
msgid "Address line 2"
msgstr "地址行2"
-#: company/models.py:426 company/models.py:427
+#: company/models.py:432 company/models.py:433
msgid "Postal code"
msgstr "郵政編碼"
-#: company/models.py:433
+#: company/models.py:439
msgid "City/Region"
msgstr "城市/地區"
-#: company/models.py:434
+#: company/models.py:440
msgid "Postal code city/region"
msgstr "郵政編碼城市/地區"
-#: company/models.py:440
+#: company/models.py:446
msgid "State/Province"
msgstr "省/市/自治區"
-#: company/models.py:441
+#: company/models.py:447
msgid "State or province"
msgstr "省、自治區或直轄市"
-#: company/models.py:447
+#: company/models.py:453
msgid "Country"
msgstr "國家/地區"
-#: company/models.py:448
+#: company/models.py:454
msgid "Address country"
msgstr "地址所在國家"
-#: company/models.py:454
+#: company/models.py:460
msgid "Courier shipping notes"
msgstr "快遞運單"
-#: company/models.py:455
+#: company/models.py:461
msgid "Notes for shipping courier"
msgstr "運輸快遞注意事項"
-#: company/models.py:461
+#: company/models.py:467
msgid "Internal shipping notes"
msgstr "內部裝運通知單"
-#: company/models.py:462
+#: company/models.py:468
msgid "Shipping notes for internal use"
msgstr "內部使用的裝運通知單"
-#: company/models.py:469
+#: company/models.py:475
msgid "Link to address information (external)"
msgstr "鏈接地址信息 (外部)"
-#: company/models.py:494 company/models.py:786 company/serializers.py:516
+#: company/models.py:500 company/models.py:773 company/serializers.py:474
#: stock/api.py:561
msgid "Manufacturer Part"
msgstr "製造商零件"
-#: company/models.py:511 company/models.py:754 stock/models.py:1025
-#: stock/serializers.py:407
+#: company/models.py:517 company/models.py:741 stock/models.py:1011
+#: stock/serializers.py:409
msgid "Base Part"
msgstr "基礎零件"
-#: company/models.py:513 company/models.py:756
+#: company/models.py:519 company/models.py:743
msgid "Select part"
msgstr "選擇零件"
-#: company/models.py:523
+#: company/models.py:529
msgid "Select manufacturer"
msgstr "選擇製造商"
-#: company/models.py:529 company/serializers.py:524 order/serializers.py:745
+#: company/models.py:535 company/serializers.py:485 order/serializers.py:692
#: part/serializers.py:487
msgid "MPN"
msgstr "製造商零件編號"
-#: company/models.py:530 stock/serializers.py:572
+#: company/models.py:536 stock/serializers.py:560
msgid "Manufacturer Part Number"
msgstr "製造商零件編號"
-#: company/models.py:537
+#: company/models.py:543
msgid "URL for external manufacturer part link"
msgstr "外部製造商零件鏈接的URL"
-#: company/models.py:546
+#: company/models.py:552
msgid "Manufacturer part description"
msgstr "製造商零件説明"
-#: company/models.py:694
+#: company/models.py:681
msgid "Pack units must be compatible with the base part units"
msgstr "包裝單位必須與基礎零件單位兼容"
-#: company/models.py:701
+#: company/models.py:688
msgid "Pack units must be greater than zero"
msgstr "包裝單位必須大於零"
-#: company/models.py:715
+#: company/models.py:702
msgid "Linked manufacturer part must reference the same base part"
msgstr "鏈接的製造商零件必須引用相同的基礎零件"
-#: company/models.py:764 company/serializers.py:494 company/serializers.py:512
-#: order/models.py:640 part/serializers.py:461
+#: company/models.py:751 company/serializers.py:442 company/serializers.py:469
+#: order/models.py:641 part/serializers.py:461
#: plugin/builtin/suppliers/digikey.py:26 plugin/builtin/suppliers/lcsc.py:27
#: plugin/builtin/suppliers/mouser.py:25 plugin/builtin/suppliers/tme.py:27
#: stock/api.py:567 templates/email/overdue_purchase_order.html:16
msgid "Supplier"
msgstr "供應商"
-#: company/models.py:765
+#: company/models.py:752
msgid "Select supplier"
msgstr "選擇供應商"
-#: company/models.py:771 part/serializers.py:472
+#: company/models.py:758 part/serializers.py:472
msgid "Supplier stock keeping unit"
msgstr "供應商庫存管理單位"
-#: company/models.py:777
+#: company/models.py:764
msgid "Is this supplier part active?"
msgstr "此供應商零件是否處於活動狀態?"
-#: company/models.py:787
+#: company/models.py:774
msgid "Select manufacturer part"
msgstr "選擇製造商零件"
-#: company/models.py:794
+#: company/models.py:781
msgid "URL for external supplier part link"
msgstr "外部供應商零件鏈接的URL"
-#: company/models.py:803
+#: company/models.py:790
msgid "Supplier part description"
msgstr "供應商零件説明"
-#: company/models.py:819 part/models.py:2338
+#: company/models.py:806 part/models.py:2319
msgid "base cost"
msgstr "基本費用"
-#: company/models.py:820 part/models.py:2339
+#: company/models.py:807 part/models.py:2320
msgid "Minimum charge (e.g. stocking fee)"
msgstr "最低費用(例如庫存費)"
-#: company/models.py:827 order/serializers.py:886 stock/models.py:1056
-#: stock/serializers.py:1606
+#: company/models.py:814 order/serializers.py:833 stock/models.py:1042
+#: stock/serializers.py:1612
msgid "Packaging"
msgstr "打包"
-#: company/models.py:828
+#: company/models.py:815
msgid "Part packaging"
msgstr "零件打包"
-#: company/models.py:833
+#: company/models.py:820
msgid "Pack Quantity"
msgstr "包裝數量"
-#: company/models.py:835
+#: company/models.py:822
msgid "Total quantity supplied in a single pack. Leave empty for single items."
msgstr "單包供應的總數量。為單個項目留空。"
-#: company/models.py:854 part/models.py:2345
+#: company/models.py:841 part/models.py:2326
msgid "multiple"
msgstr "多個"
-#: company/models.py:855
+#: company/models.py:842
msgid "Order multiple"
msgstr "訂購多個"
-#: company/models.py:867
+#: company/models.py:854
msgid "Quantity available from supplier"
msgstr "供應商提供的數量"
-#: company/models.py:873
+#: company/models.py:860
msgid "Availability Updated"
msgstr "可用性已更新"
-#: company/models.py:874
+#: company/models.py:861
msgid "Date of last update of availability data"
msgstr "上次更新可用性數據的日期"
-#: company/models.py:1002
+#: company/models.py:989
msgid "Supplier Price Break"
msgstr "供應商批發價"
-#: company/serializers.py:184
-msgid "Primary Address"
-msgstr ""
-
-#: company/serializers.py:186
-msgid "Return the string representation for the primary address. This property exists for backwards compatibility."
-msgstr "回傳主要地址的字串表示;此屬性保留以維持回溯相容。"
-
-#: company/serializers.py:218
+#: company/serializers.py:191
msgid "Default currency used for this supplier"
msgstr "此供應商使用的默認貨幣"
-#: company/serializers.py:260
+#: company/serializers.py:229
msgid "Company Name"
msgstr "公司名稱"
-#: company/serializers.py:460 part/serializers.py:840 stock/serializers.py:428
+#: company/serializers.py:406 part/serializers.py:827 stock/serializers.py:430
msgid "In Stock"
msgstr "有庫存"
-#: company/serializers.py:477
+#: company/serializers.py:423
msgid "Price Breaks"
msgstr ""
-#: data_exporter/mixins.py:325 data_exporter/mixins.py:403
+#: data_exporter/mixins.py:323 data_exporter/mixins.py:412
msgid "Error occurred during data export"
msgstr "資料匯出過程發生錯誤"
-#: data_exporter/mixins.py:381
+#: data_exporter/mixins.py:390
msgid "Data export plugin returned incorrect data format"
msgstr "資料匯出模組回傳的資料格式不正確"
@@ -4418,7 +4418,7 @@ msgstr "原始行數據"
msgid "Errors"
msgstr "錯誤"
-#: importer/models.py:550 part/serializers.py:1133
+#: importer/models.py:550 part/serializers.py:1114
msgid "Valid"
msgstr "有效"
@@ -4530,7 +4530,7 @@ msgstr "每個標籤要打印的份數"
msgid "Connected"
msgstr "已連接"
-#: machine/machine_types/label_printer.py:232 order/api.py:1800
+#: machine/machine_types/label_printer.py:232 order/api.py:1790
msgid "Unknown"
msgstr "未知"
@@ -4662,7 +4662,7 @@ msgstr ""
msgid "Order Reference"
msgstr "訂單參考"
-#: order/api.py:158 order/api.py:1212
+#: order/api.py:158 order/api.py:1204
msgid "Outstanding"
msgstr "未完成"
@@ -4670,7 +4670,7 @@ msgstr "未完成"
msgid "Has Project Code"
msgstr "有項目編碼"
-#: order/api.py:188 order/models.py:489
+#: order/api.py:188 order/models.py:490
msgid "Created By"
msgstr "創建人"
@@ -4710,11 +4710,11 @@ msgstr "目標日期晚於"
msgid "Has Pricing"
msgstr "有定價"
-#: order/api.py:332 order/api.py:818 order/api.py:1495
+#: order/api.py:332 order/api.py:816 order/api.py:1487
msgid "Completed Before"
msgstr "完成時間早於"
-#: order/api.py:336 order/api.py:822 order/api.py:1499
+#: order/api.py:336 order/api.py:820 order/api.py:1491
msgid "Completed After"
msgstr "完成時間晚於"
@@ -4722,40 +4722,40 @@ msgstr "完成時間晚於"
msgid "External Build Order"
msgstr "外部生產工單"
-#: order/api.py:532 order/api.py:919 order/api.py:1175 order/models.py:1923
+#: order/api.py:530 order/api.py:915 order/api.py:1167 order/models.py:1924
#: order/models.py:2050 order/models.py:2100 order/models.py:2280
#: order/models.py:2478 order/models.py:3000 order/models.py:3066
msgid "Order"
msgstr "訂單"
-#: order/api.py:536 order/api.py:987
+#: order/api.py:534 order/api.py:983
msgid "Order Complete"
msgstr "訂單完成"
-#: order/api.py:568 order/api.py:572 order/serializers.py:756
+#: order/api.py:566 order/api.py:570 order/serializers.py:703
msgid "Internal Part"
msgstr "內部零件"
-#: order/api.py:590
+#: order/api.py:588
msgid "Order Pending"
msgstr "訂單待定"
-#: order/api.py:972
+#: order/api.py:968
msgid "Completed"
msgstr "已完成"
-#: order/api.py:1228
+#: order/api.py:1220
msgid "Has Shipment"
msgstr "已出貨"
-#: order/api.py:1794 order/models.py:553 order/models.py:1924
+#: order/api.py:1784 order/models.py:554 order/models.py:1925
#: order/models.py:2051
#: report/templates/report/inventree_purchase_order_report.html:14
#: stock/serializers.py:129 templates/email/overdue_purchase_order.html:15
msgid "Purchase Order"
msgstr "採購訂單"
-#: order/api.py:1796 order/models.py:1252 order/models.py:2101
+#: order/api.py:1786 order/models.py:1253 order/models.py:2101
#: order/models.py:2281 order/models.py:2479
#: report/templates/report/inventree_build_order_report.html:135
#: report/templates/report/inventree_sales_order_report.html:14
@@ -4764,7 +4764,7 @@ msgstr "採購訂單"
msgid "Sales Order"
msgstr "銷售訂單"
-#: order/api.py:1798 order/models.py:2650 order/models.py:3001
+#: order/api.py:1788 order/models.py:2650 order/models.py:3001
#: order/models.py:3067
#: report/templates/report/inventree_return_order_report.html:13
#: templates/email/overdue_return_order.html:15
@@ -4781,11 +4781,11 @@ msgstr "總價格"
msgid "Total price for this order"
msgstr "此訂單的總價"
-#: order/models.py:96 order/serializers.py:78
+#: order/models.py:96 order/serializers.py:67
msgid "Order Currency"
msgstr "訂單貨幣"
-#: order/models.py:99 order/serializers.py:79
+#: order/models.py:99 order/serializers.py:68
msgid "Currency for this order (leave blank to use company default)"
msgstr "此訂單的貨幣 (留空以使用公司默認值)"
@@ -4805,240 +4805,240 @@ msgstr "開始日期必須早於目標日期"
msgid "Address does not match selected company"
msgstr ""
-#: order/models.py:444
+#: order/models.py:445
msgid "Order description (optional)"
msgstr "訂單描述 (可選)"
-#: order/models.py:453 order/models.py:1807
+#: order/models.py:454 order/models.py:1808
msgid "Select project code for this order"
msgstr "為此訂單選擇項目編碼"
-#: order/models.py:459 order/models.py:1788 order/models.py:2345
+#: order/models.py:460 order/models.py:1789 order/models.py:2345
msgid "Link to external page"
msgstr "鏈接到外部頁面"
-#: order/models.py:466
+#: order/models.py:467
msgid "Start date"
msgstr "開始日期"
-#: order/models.py:467
+#: order/models.py:468
msgid "Scheduled start date for this order"
msgstr "此訂單的預定開始日期"
-#: order/models.py:473 order/models.py:1795 order/serializers.py:317
+#: order/models.py:474 order/models.py:1796 order/serializers.py:289
#: report/templates/report/inventree_build_order_report.html:125
msgid "Target Date"
msgstr "預計日期"
-#: order/models.py:475
+#: order/models.py:476
msgid "Expected date for order delivery. Order will be overdue after this date."
msgstr "訂單交付的預期日期。訂單將在此日期後過期。"
-#: order/models.py:495
+#: order/models.py:496
msgid "Issue Date"
msgstr "簽發日期"
-#: order/models.py:496
+#: order/models.py:497
msgid "Date order was issued"
msgstr "訂單發出日期"
-#: order/models.py:504
+#: order/models.py:505
msgid "User or group responsible for this order"
msgstr "負責此訂單的用户或組"
-#: order/models.py:515
+#: order/models.py:516
msgid "Point of contact for this order"
msgstr "此訂單的聯繫人"
-#: order/models.py:525
+#: order/models.py:526
msgid "Company address for this order"
msgstr "此訂單的公司地址"
-#: order/models.py:616 order/models.py:1313
+#: order/models.py:617 order/models.py:1314
msgid "Order reference"
msgstr "訂單參考"
-#: order/models.py:625 order/models.py:1337 order/models.py:2738
-#: stock/serializers.py:559 stock/serializers.py:988 users/models.py:542
+#: order/models.py:626 order/models.py:1338 order/models.py:2738
+#: stock/serializers.py:547 stock/serializers.py:988 users/models.py:542
msgid "Status"
msgstr "狀態"
-#: order/models.py:626
+#: order/models.py:627
msgid "Purchase order status"
msgstr "採購訂單狀態"
-#: order/models.py:641
+#: order/models.py:642
msgid "Company from which the items are being ordered"
msgstr "訂購物品的公司"
-#: order/models.py:652
+#: order/models.py:653
msgid "Supplier Reference"
msgstr "供應商參考"
-#: order/models.py:653
+#: order/models.py:654
msgid "Supplier order reference code"
msgstr "供應商訂單參考代碼"
-#: order/models.py:662
+#: order/models.py:663
msgid "received by"
msgstr "接收人"
-#: order/models.py:669 order/models.py:2753
+#: order/models.py:670 order/models.py:2753
msgid "Date order was completed"
msgstr "訂單完成日期"
-#: order/models.py:678 order/models.py:1982
+#: order/models.py:679 order/models.py:1983
msgid "Destination"
msgstr "目的地"
-#: order/models.py:679 order/models.py:1986
+#: order/models.py:680 order/models.py:1987
msgid "Destination for received items"
msgstr "收到項目的存放目的地"
-#: order/models.py:725
+#: order/models.py:726
msgid "Part supplier must match PO supplier"
msgstr "零件供應商必須與採購訂單供應商匹配"
-#: order/models.py:995
+#: order/models.py:996
msgid "Line item does not match purchase order"
msgstr "行項目與採購訂單不匹配"
-#: order/models.py:998
+#: order/models.py:999
msgid "Line item is missing a linked part"
msgstr "行項目缺少關聯零件"
-#: order/models.py:1012
+#: order/models.py:1013
msgid "Quantity must be a positive number"
msgstr "數量必須是正數"
-#: order/models.py:1324 order/models.py:2725 stock/models.py:1078
-#: stock/models.py:1079 stock/serializers.py:1322
+#: order/models.py:1325 order/models.py:2725 stock/models.py:1064
+#: stock/models.py:1065 stock/serializers.py:1328
#: templates/email/overdue_return_order.html:16
#: templates/email/overdue_sales_order.html:16
msgid "Customer"
msgstr "客户"
-#: order/models.py:1325
+#: order/models.py:1326
msgid "Company to which the items are being sold"
msgstr "出售物品的公司"
-#: order/models.py:1338
+#: order/models.py:1339
msgid "Sales order status"
msgstr "銷售訂單狀態"
-#: order/models.py:1349 order/models.py:2745
+#: order/models.py:1350 order/models.py:2745
msgid "Customer Reference "
msgstr "客户參考 "
-#: order/models.py:1350 order/models.py:2746
+#: order/models.py:1351 order/models.py:2746
msgid "Customer order reference code"
msgstr "客户訂單參考代碼"
-#: order/models.py:1354 order/models.py:2297
+#: order/models.py:1355 order/models.py:2297
msgid "Shipment Date"
msgstr "發貨日期"
-#: order/models.py:1363
+#: order/models.py:1364
msgid "shipped by"
msgstr "發貨人"
-#: order/models.py:1414
+#: order/models.py:1415
msgid "Order is already complete"
msgstr "訂單已完成"
-#: order/models.py:1417
+#: order/models.py:1418
msgid "Order is already cancelled"
msgstr "訂單已取消"
-#: order/models.py:1421
+#: order/models.py:1422
msgid "Only an open order can be marked as complete"
msgstr "只有未結訂單才能標記為已完成"
-#: order/models.py:1425
+#: order/models.py:1426
msgid "Order cannot be completed as there are incomplete shipments"
msgstr "由於發貨不完整,訂單無法完成"
-#: order/models.py:1430
+#: order/models.py:1431
msgid "Order cannot be completed as there are incomplete allocations"
msgstr "訂單無法完成,因為仍有未完成的分配"
-#: order/models.py:1439
+#: order/models.py:1440
msgid "Order cannot be completed as there are incomplete line items"
msgstr "訂單無法完成,因為行項目不完整"
-#: order/models.py:1734 order/models.py:1750
+#: order/models.py:1735 order/models.py:1751
msgid "The order is locked and cannot be modified"
msgstr "此訂單已鎖定,無法修改"
-#: order/models.py:1758
+#: order/models.py:1759
msgid "Item quantity"
msgstr "項目數量"
-#: order/models.py:1775
+#: order/models.py:1776
msgid "Line item reference"
msgstr "行項目參考"
-#: order/models.py:1782
+#: order/models.py:1783
msgid "Line item notes"
msgstr "行項目註釋"
-#: order/models.py:1797
+#: order/models.py:1798
msgid "Target date for this line item (leave blank to use the target date from the order)"
msgstr "此行項目的目標日期 (留空以使用訂單中的目標日期)"
-#: order/models.py:1827
+#: order/models.py:1828
msgid "Line item description (optional)"
msgstr "行項目描述 (可選)"
-#: order/models.py:1834
+#: order/models.py:1835
msgid "Additional context for this line"
msgstr "此行的附加上下文"
-#: order/models.py:1844
+#: order/models.py:1845
msgid "Unit price"
msgstr "單位價格"
-#: order/models.py:1863
+#: order/models.py:1864
msgid "Purchase Order Line Item"
msgstr "採購訂單行項目"
-#: order/models.py:1890
+#: order/models.py:1891
msgid "Supplier part must match supplier"
msgstr "供應商零件必須與供應商匹配"
-#: order/models.py:1895
+#: order/models.py:1896
msgid "Build order must be marked as external"
msgstr "生產工單必須標記為外部"
-#: order/models.py:1902
+#: order/models.py:1903
msgid "Build orders can only be linked to assembly parts"
msgstr "生產工單只能連結到組裝零件"
-#: order/models.py:1908
+#: order/models.py:1909
msgid "Build order part must match line item part"
msgstr "生產工單的零件必須與行項目的零件一致"
-#: order/models.py:1943
+#: order/models.py:1944
msgid "Supplier part"
msgstr "供應商零件"
-#: order/models.py:1950
+#: order/models.py:1951
msgid "Received"
msgstr "已接收"
-#: order/models.py:1951
+#: order/models.py:1952
msgid "Number of items received"
msgstr "收到的物品數量"
-#: order/models.py:1959 stock/models.py:1201 stock/serializers.py:637
+#: order/models.py:1960 stock/models.py:1187 stock/serializers.py:637
msgid "Purchase Price"
msgstr "採購價格"
-#: order/models.py:1960
+#: order/models.py:1961
msgid "Unit purchase price"
msgstr "每單位的採購價格"
-#: order/models.py:1976
+#: order/models.py:1977
msgid "External Build Order to be fulfilled by this line item"
msgstr "由此行項目履行的外部生產工單"
@@ -5102,8 +5102,8 @@ msgstr "審核人"
msgid "User who checked this shipment"
msgstr "檢查此裝運的用户"
-#: order/models.py:2321 order/models.py:2575 order/serializers.py:1725
-#: order/serializers.py:1849
+#: order/models.py:2321 order/models.py:2575 order/serializers.py:1688
+#: order/serializers.py:1812
#: report/templates/report/inventree_sales_order_shipment_report.html:14
msgid "Shipment"
msgstr "配送"
@@ -5164,7 +5164,11 @@ msgstr "無法將庫存分配給沒有零件的生產線"
msgid "Allocation quantity cannot exceed stock quantity"
msgstr "分配數量不能超過庫存數量"
-#: order/models.py:2553 order/serializers.py:1595
+#: order/models.py:2550
+msgid "Allocation quantity must be greater than zero"
+msgstr "分配的數量必須大於零"
+
+#: order/models.py:2553 order/serializers.py:1558
msgid "Quantity must be 1 for serialized stock item"
msgstr "序列化庫存項目的數量必須為1"
@@ -5172,7 +5176,7 @@ msgstr "序列化庫存項目的數量必須為1"
msgid "Sales order does not match shipment"
msgstr "銷售訂單與發貨不匹配"
-#: order/models.py:2557 plugin/base/barcodes/api.py:642
+#: order/models.py:2557 plugin/base/barcodes/api.py:643
msgid "Shipment does not match sales order"
msgstr "發貨與銷售訂單不匹配"
@@ -5256,247 +5260,247 @@ msgstr "與此行項目的退貨或維修相關的成本"
msgid "Return Order Extra Line"
msgstr "退貨訂單附加行"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "Order ID"
msgstr "訂單ID"
-#: order/serializers.py:92
+#: order/serializers.py:81
msgid "ID of the order to duplicate"
msgstr "要複製的訂單ID"
-#: order/serializers.py:98
+#: order/serializers.py:87
msgid "Copy Lines"
msgstr "複製行"
-#: order/serializers.py:99
+#: order/serializers.py:88
msgid "Copy line items from the original order"
msgstr "從原始訂單複製行項目"
-#: order/serializers.py:105
+#: order/serializers.py:94
msgid "Copy Extra Lines"
msgstr "複製額外行"
-#: order/serializers.py:106
+#: order/serializers.py:95
msgid "Copy extra line items from the original order"
msgstr "從原始訂單複製額外的行項目"
-#: order/serializers.py:121
+#: order/serializers.py:110
#: report/templates/report/inventree_purchase_order_report.html:29
#: report/templates/report/inventree_return_order_report.html:19
#: report/templates/report/inventree_sales_order_report.html:22
msgid "Line Items"
msgstr "行項目"
-#: order/serializers.py:126
+#: order/serializers.py:115
msgid "Completed Lines"
msgstr "已完成行項目"
-#: order/serializers.py:199
+#: order/serializers.py:171
msgid "Duplicate Order"
msgstr "複製訂單"
-#: order/serializers.py:200
+#: order/serializers.py:172
msgid "Specify options for duplicating this order"
msgstr "指定複製此訂單的選項"
-#: order/serializers.py:278
+#: order/serializers.py:250
msgid "Invalid order ID"
msgstr "訂單ID不正確"
-#: order/serializers.py:477
+#: order/serializers.py:419
msgid "Supplier Name"
msgstr "供應商名稱"
-#: order/serializers.py:521
+#: order/serializers.py:464
msgid "Order cannot be cancelled"
msgstr "訂單不能取消"
-#: order/serializers.py:536 order/serializers.py:1616
+#: order/serializers.py:479 order/serializers.py:1579
msgid "Allow order to be closed with incomplete line items"
msgstr "允許關閉行項目不完整的訂單"
-#: order/serializers.py:546 order/serializers.py:1626
+#: order/serializers.py:489 order/serializers.py:1589
msgid "Order has incomplete line items"
msgstr "訂單中的行項目不完整"
-#: order/serializers.py:676
+#: order/serializers.py:609
msgid "Order is not open"
msgstr "訂單未打開"
-#: order/serializers.py:703
+#: order/serializers.py:638
msgid "Auto Pricing"
msgstr "自動定價"
-#: order/serializers.py:705
+#: order/serializers.py:640
msgid "Automatically calculate purchase price based on supplier part data"
msgstr "根據供應商零件數據自動計算採購價格"
-#: order/serializers.py:715
+#: order/serializers.py:654
msgid "Purchase price currency"
msgstr "購買價格貨幣"
-#: order/serializers.py:729
+#: order/serializers.py:676
msgid "Merge Items"
msgstr "合併項目"
-#: order/serializers.py:731
+#: order/serializers.py:678
msgid "Merge items with the same part, destination and target date into one line item"
msgstr "將具有相同零件、目的地和目標日期的項目合併到一個行項目中"
-#: order/serializers.py:738 part/serializers.py:471
+#: order/serializers.py:685 part/serializers.py:471
msgid "SKU"
msgstr "庫存量單位"
-#: order/serializers.py:752 part/models.py:1177 part/serializers.py:337
+#: order/serializers.py:699 part/models.py:1158 part/serializers.py:337
msgid "Internal Part Number"
msgstr "內部零件編號"
-#: order/serializers.py:760
+#: order/serializers.py:707
msgid "Internal Part Name"
msgstr "內部零件名稱"
-#: order/serializers.py:776
+#: order/serializers.py:723
msgid "Supplier part must be specified"
msgstr "必須指定供應商零件"
-#: order/serializers.py:779
+#: order/serializers.py:726
msgid "Purchase order must be specified"
msgstr "必須指定採購訂單"
-#: order/serializers.py:787
+#: order/serializers.py:734
msgid "Supplier must match purchase order"
msgstr "供應商必須匹配採購訂單"
-#: order/serializers.py:788
+#: order/serializers.py:735
msgid "Purchase order must match supplier"
msgstr "採購訂單必須與供應商匹配"
-#: order/serializers.py:836 order/serializers.py:1696
+#: order/serializers.py:783 order/serializers.py:1659
msgid "Line Item"
msgstr "行項目"
-#: order/serializers.py:845 order/serializers.py:985 order/serializers.py:2060
+#: order/serializers.py:792 order/serializers.py:932 order/serializers.py:2021
msgid "Select destination location for received items"
msgstr "為收到的物品選擇目的地位置"
-#: order/serializers.py:861
+#: order/serializers.py:808
msgid "Enter batch code for incoming stock items"
msgstr "輸入入庫項目的批號"
-#: order/serializers.py:868 stock/models.py:1160
+#: order/serializers.py:815 stock/models.py:1146
#: templates/email/stale_stock_notification.html:22 users/models.py:137
msgid "Expiry Date"
msgstr "有效期至"
-#: order/serializers.py:869
+#: order/serializers.py:816
msgid "Enter expiry date for incoming stock items"
msgstr "輸入入庫庫存項目的到期日"
-#: order/serializers.py:877
+#: order/serializers.py:824
msgid "Enter serial numbers for incoming stock items"
msgstr "輸入入庫庫存項目的序列號"
-#: order/serializers.py:887
+#: order/serializers.py:834
msgid "Override packaging information for incoming stock items"
msgstr "覆蓋傳入庫存項目的包裝資料"
-#: order/serializers.py:895 order/serializers.py:2065
+#: order/serializers.py:842 order/serializers.py:2026
msgid "Additional note for incoming stock items"
msgstr "傳入庫存項目的附加説明"
-#: order/serializers.py:902
+#: order/serializers.py:849
msgid "Barcode"
msgstr "條形碼"
-#: order/serializers.py:903
+#: order/serializers.py:850
msgid "Scanned barcode"
msgstr "掃描條形碼"
-#: order/serializers.py:919
+#: order/serializers.py:866
msgid "Barcode is already in use"
msgstr "條形碼已被使用"
-#: order/serializers.py:1002 order/serializers.py:2084
+#: order/serializers.py:949 order/serializers.py:2045
msgid "Line items must be provided"
msgstr "必須提供行項目"
-#: order/serializers.py:1021
+#: order/serializers.py:968
msgid "Destination location must be specified"
msgstr "必須指定目標位置"
-#: order/serializers.py:1028
+#: order/serializers.py:975
msgid "Supplied barcode values must be unique"
msgstr "提供的條形碼值必須是唯一的"
-#: order/serializers.py:1135
+#: order/serializers.py:1080
msgid "Shipments"
msgstr "配送紀錄"
-#: order/serializers.py:1139
+#: order/serializers.py:1084
msgid "Completed Shipments"
msgstr "完成配送"
-#: order/serializers.py:1307
+#: order/serializers.py:1263
msgid "Sale price currency"
msgstr "售出價格貨幣"
-#: order/serializers.py:1353
+#: order/serializers.py:1306
msgid "Allocated Items"
msgstr "已分配項目"
-#: order/serializers.py:1498
+#: order/serializers.py:1461
msgid "No shipment details provided"
msgstr "未提供裝運詳細信息"
-#: order/serializers.py:1559 order/serializers.py:1705
+#: order/serializers.py:1522 order/serializers.py:1668
msgid "Line item is not associated with this order"
msgstr "行項目與此訂單不關聯"
-#: order/serializers.py:1578
+#: order/serializers.py:1541
msgid "Quantity must be positive"
msgstr "數量必須為正"
-#: order/serializers.py:1715
+#: order/serializers.py:1678
msgid "Enter serial numbers to allocate"
msgstr "輸入要分配的序列號"
-#: order/serializers.py:1737 order/serializers.py:1857
+#: order/serializers.py:1700 order/serializers.py:1820
msgid "Shipment has already been shipped"
msgstr "貨物已發出"
-#: order/serializers.py:1740 order/serializers.py:1860
+#: order/serializers.py:1703 order/serializers.py:1823
msgid "Shipment is not associated with this order"
msgstr "發貨與此訂單無關"
-#: order/serializers.py:1795
+#: order/serializers.py:1758
msgid "No match found for the following serial numbers"
msgstr "未找到以下序列號的匹配項"
-#: order/serializers.py:1802
+#: order/serializers.py:1765
msgid "The following serial numbers are unavailable"
msgstr "以下序列號不可用"
-#: order/serializers.py:2026
+#: order/serializers.py:1987
msgid "Return order line item"
msgstr "退貨訂單行項目"
-#: order/serializers.py:2036
+#: order/serializers.py:1997
msgid "Line item does not match return order"
msgstr "行項目與退貨訂單不匹配"
-#: order/serializers.py:2039
+#: order/serializers.py:2000
msgid "Line item has already been received"
msgstr "行項目已收到"
-#: order/serializers.py:2076
+#: order/serializers.py:2037
msgid "Items can only be received against orders which are in progress"
msgstr "只能根據正在進行的訂單接收物品"
-#: order/serializers.py:2141
+#: order/serializers.py:2109
msgid "Quantity to return"
msgstr "退回數量"
-#: order/serializers.py:2157
+#: order/serializers.py:2126
msgid "Line price currency"
msgstr "行價格貨幣"
@@ -5647,7 +5651,7 @@ msgstr "組件部份是可測試的"
msgid "Uses"
msgstr "使用"
-#: part/models.py:93 part/models.py:436
+#: part/models.py:93 part/models.py:414
#: templates/email/part_event_notification.html:16
msgid "Part Category"
msgstr "零件類別"
@@ -5656,7 +5660,7 @@ msgstr "零件類別"
msgid "Part Categories"
msgstr "零件類別"
-#: part/models.py:112 part/models.py:1213
+#: part/models.py:112 part/models.py:1194
msgid "Default Location"
msgstr "默認位置"
@@ -5664,7 +5668,7 @@ msgstr "默認位置"
msgid "Default location for parts in this category"
msgstr "此類別零件的默認庫存地點"
-#: part/models.py:118 stock/models.py:216
+#: part/models.py:118 stock/models.py:202
msgid "Structural"
msgstr "結構性"
@@ -5680,12 +5684,12 @@ msgstr "默認關鍵字"
msgid "Default keywords for parts in this category"
msgstr "此類別零件的默認關鍵字"
-#: part/models.py:137 stock/models.py:97 stock/models.py:198
+#: part/models.py:137 stock/models.py:97 stock/models.py:184
msgid "Icon"
msgstr "圖標"
#: part/models.py:138 part/serializers.py:147 part/serializers.py:166
-#: stock/models.py:199
+#: stock/models.py:185
msgid "Icon (optional)"
msgstr "圖標(可選)"
@@ -5693,655 +5697,655 @@ msgstr "圖標(可選)"
msgid "You cannot make this part category structural because some parts are already assigned to it!"
msgstr "您不能使這個零件類別結構化,因為有些零件已經分配給了它!"
-#: part/models.py:392
+#: part/models.py:370
msgid "Part Category Parameter Template"
msgstr "零件類別參數模板"
-#: part/models.py:448
+#: part/models.py:426
msgid "Default Value"
msgstr "默認值"
-#: part/models.py:449
+#: part/models.py:427
msgid "Default Parameter Value"
msgstr "默認參數值"
-#: part/models.py:551 part/serializers.py:118 users/ruleset.py:28
+#: part/models.py:529 part/serializers.py:118 users/ruleset.py:28
msgid "Parts"
msgstr "零件"
-#: part/models.py:597
+#: part/models.py:575
msgid "Cannot delete parameters of a locked part"
msgstr ""
-#: part/models.py:602
+#: part/models.py:580
msgid "Cannot modify parameters of a locked part"
msgstr ""
-#: part/models.py:613
+#: part/models.py:591
msgid "Cannot delete this part as it is locked"
msgstr "無法刪除這個零件,因為它已被鎖定"
-#: part/models.py:616
+#: part/models.py:594
msgid "Cannot delete this part as it is still active"
msgstr "無法刪除這個零件,因為它仍然處於活動狀態"
-#: part/models.py:621
+#: part/models.py:599
msgid "Cannot delete this part as it is used in an assembly"
msgstr "無法刪除這個零件,因為它被使用在了裝配中"
-#: part/models.py:704 part/models.py:711
+#: part/models.py:683 part/models.py:690
#, python-brace-format
msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)"
msgstr "零件 \"{self}\" 不能用在 \"{parent}\" 的物料清單 (遞歸)"
-#: part/models.py:723
+#: part/models.py:702
#, python-brace-format
msgid "Part '{parent}' is used in BOM for '{self}' (recursive)"
msgstr "零件 \"{parent}\" 被使用在了 \"{self}\" 的物料清單 (遞歸)"
-#: part/models.py:790
+#: part/models.py:769
#, python-brace-format
msgid "IPN must match regex pattern {pattern}"
msgstr "內部零件號必須匹配正則表達式 {pattern}"
-#: part/models.py:798
+#: part/models.py:777
msgid "Part cannot be a revision of itself"
msgstr "零件不能是對自身的修訂"
-#: part/models.py:805
+#: part/models.py:784
msgid "Cannot make a revision of a part which is already a revision"
msgstr "無法對已經是修訂版本的零件進行修訂"
-#: part/models.py:812
+#: part/models.py:791
msgid "Revision code must be specified"
msgstr "必須指定修訂代碼"
-#: part/models.py:819
+#: part/models.py:798
msgid "Revisions are only allowed for assembly parts"
msgstr "修訂僅對裝配零件允許"
-#: part/models.py:826
+#: part/models.py:805
msgid "Cannot make a revision of a template part"
msgstr "無法對模版零件進行修訂"
-#: part/models.py:832
+#: part/models.py:811
msgid "Parent part must point to the same template"
msgstr "上級零件必須指向相同的模版"
-#: part/models.py:929
+#: part/models.py:908
msgid "Stock item with this serial number already exists"
msgstr "該序列號庫存項己存在"
-#: part/models.py:1059
+#: part/models.py:1038
msgid "Duplicate IPN not allowed in part settings"
msgstr "在零件設置中不允許重複的內部零件號"
-#: part/models.py:1071
+#: part/models.py:1051
msgid "Duplicate part revision already exists."
msgstr "重複的零件修訂版本已經存在。"
-#: part/models.py:1080
+#: part/models.py:1061
msgid "Part with this Name, IPN and Revision already exists."
msgstr "有這個名字,內部零件號,和修訂版本的零件已經存在"
-#: part/models.py:1095
+#: part/models.py:1076
msgid "Parts cannot be assigned to structural part categories!"
msgstr "零件不能分配到結構性零件類別!"
-#: part/models.py:1127
+#: part/models.py:1108
msgid "Part name"
msgstr "零件名稱"
-#: part/models.py:1132
+#: part/models.py:1113
msgid "Is Template"
msgstr "是模板"
-#: part/models.py:1133
+#: part/models.py:1114
msgid "Is this part a template part?"
msgstr "這個零件是一個模版零件嗎?"
-#: part/models.py:1143
+#: part/models.py:1124
msgid "Is this part a variant of another part?"
msgstr "這個零件是另一零件的變體嗎?"
-#: part/models.py:1144
+#: part/models.py:1125
msgid "Variant Of"
msgstr "變體"
-#: part/models.py:1151
+#: part/models.py:1132
msgid "Part description (optional)"
msgstr "零件描述(可選)"
-#: part/models.py:1158
+#: part/models.py:1139
msgid "Keywords"
msgstr "關鍵詞"
-#: part/models.py:1159
+#: part/models.py:1140
msgid "Part keywords to improve visibility in search results"
msgstr "提高搜索結果可見性的零件關鍵字"
-#: part/models.py:1169
+#: part/models.py:1150
msgid "Part category"
msgstr "零件類別"
-#: part/models.py:1176 part/serializers.py:814
+#: part/models.py:1157 part/serializers.py:801
#: report/templates/report/inventree_stock_location_report.html:103
msgid "IPN"
msgstr "內部零件號 IPN"
-#: part/models.py:1184
+#: part/models.py:1165
msgid "Part revision or version number"
msgstr "零件修訂版本或版本號"
-#: part/models.py:1185 report/models.py:228
+#: part/models.py:1166 report/models.py:228
msgid "Revision"
msgstr "版本"
-#: part/models.py:1194
+#: part/models.py:1175
msgid "Is this part a revision of another part?"
msgstr "這零件是另一零件的修訂版本嗎?"
-#: part/models.py:1195
+#: part/models.py:1176
msgid "Revision Of"
msgstr "修訂版本"
-#: part/models.py:1211
+#: part/models.py:1192
msgid "Where is this item normally stored?"
msgstr "該物品通常存放在哪裏?"
-#: part/models.py:1257
+#: part/models.py:1238
msgid "Default Supplier"
msgstr "默認供應商"
-#: part/models.py:1258
+#: part/models.py:1239
msgid "Default supplier part"
msgstr "默認供應商零件"
-#: part/models.py:1265
+#: part/models.py:1246
msgid "Default Expiry"
msgstr "默認到期"
-#: part/models.py:1266
+#: part/models.py:1247
msgid "Expiry time (in days) for stock items of this part"
msgstr "此零件庫存項的過期時間 (天)"
-#: part/models.py:1274 part/serializers.py:888
+#: part/models.py:1255 part/serializers.py:871
msgid "Minimum Stock"
msgstr "最低庫存"
-#: part/models.py:1275
+#: part/models.py:1256
msgid "Minimum allowed stock level"
msgstr "允許的最小庫存量"
-#: part/models.py:1284
+#: part/models.py:1265
msgid "Units of measure for this part"
msgstr "此零件的計量單位"
-#: part/models.py:1291
+#: part/models.py:1272
msgid "Can this part be built from other parts?"
msgstr "這個零件可由其他零件加工而成嗎?"
-#: part/models.py:1297
+#: part/models.py:1278
msgid "Can this part be used to build other parts?"
msgstr "這個零件可用於創建其他零件嗎?"
-#: part/models.py:1303
+#: part/models.py:1284
msgid "Does this part have tracking for unique items?"
msgstr "此零件是否有唯一物品的追蹤功能"
-#: part/models.py:1309
+#: part/models.py:1290
msgid "Can this part have test results recorded against it?"
msgstr "這一部分能否記錄到測試結果?"
-#: part/models.py:1315
+#: part/models.py:1296
msgid "Can this part be purchased from external suppliers?"
msgstr "這個零件可從外部供應商購買嗎?"
-#: part/models.py:1321
+#: part/models.py:1302
msgid "Can this part be sold to customers?"
msgstr "此零件可以銷售給客户嗎?"
-#: part/models.py:1325
+#: part/models.py:1306
msgid "Is this part active?"
msgstr "這個零件是否已激活?"
-#: part/models.py:1331
+#: part/models.py:1312
msgid "Locked parts cannot be edited"
msgstr "無法編輯鎖定的零件"
-#: part/models.py:1337
+#: part/models.py:1318
msgid "Is this a virtual part, such as a software product or license?"
msgstr "這是一個虛擬零件,例如一個軟件產品或許可證嗎?"
-#: part/models.py:1342
+#: part/models.py:1323
msgid "BOM Validated"
msgstr "BOM 已驗證"
-#: part/models.py:1343
+#: part/models.py:1324
msgid "Is the BOM for this part valid?"
msgstr "此零件的 BOM 是否已通過驗證?"
-#: part/models.py:1349
+#: part/models.py:1330
msgid "BOM checksum"
msgstr "物料清單校驗和"
-#: part/models.py:1350
+#: part/models.py:1331
msgid "Stored BOM checksum"
msgstr "保存的物料清單校驗和"
-#: part/models.py:1358
+#: part/models.py:1339
msgid "BOM checked by"
msgstr "物料清單檢查人"
-#: part/models.py:1363
+#: part/models.py:1344
msgid "BOM checked date"
msgstr "物料清單檢查日期"
-#: part/models.py:1379
+#: part/models.py:1360
msgid "Creation User"
msgstr "新建用户"
-#: part/models.py:1389
+#: part/models.py:1370
msgid "Owner responsible for this part"
msgstr "此零件的負責人"
-#: part/models.py:2346
+#: part/models.py:2327
msgid "Sell multiple"
msgstr "出售多個"
-#: part/models.py:3350
+#: part/models.py:3331
msgid "Currency used to cache pricing calculations"
msgstr "用於緩存定價計算的貨幣"
-#: part/models.py:3366
+#: part/models.py:3347
msgid "Minimum BOM Cost"
msgstr "最低物料清單成本"
-#: part/models.py:3367
+#: part/models.py:3348
msgid "Minimum cost of component parts"
msgstr "元件的最低成本"
-#: part/models.py:3373
+#: part/models.py:3354
msgid "Maximum BOM Cost"
msgstr "物料清單的最高成本"
-#: part/models.py:3374
+#: part/models.py:3355
msgid "Maximum cost of component parts"
msgstr "元件的最高成本"
-#: part/models.py:3380
+#: part/models.py:3361
msgid "Minimum Purchase Cost"
msgstr "最低購買成本"
-#: part/models.py:3381
+#: part/models.py:3362
msgid "Minimum historical purchase cost"
msgstr "最高歷史購買成本"
-#: part/models.py:3387
+#: part/models.py:3368
msgid "Maximum Purchase Cost"
msgstr "最大購買成本"
-#: part/models.py:3388
+#: part/models.py:3369
msgid "Maximum historical purchase cost"
msgstr "最高歷史購買成本"
-#: part/models.py:3394
+#: part/models.py:3375
msgid "Minimum Internal Price"
msgstr "最低內部價格"
-#: part/models.py:3395
+#: part/models.py:3376
msgid "Minimum cost based on internal price breaks"
msgstr "基於內部批發價的最低成本"
-#: part/models.py:3401
+#: part/models.py:3382
msgid "Maximum Internal Price"
msgstr "最大內部價格"
-#: part/models.py:3402
+#: part/models.py:3383
msgid "Maximum cost based on internal price breaks"
msgstr "基於內部批發價的最高成本"
-#: part/models.py:3408
+#: part/models.py:3389
msgid "Minimum Supplier Price"
msgstr "供應商最低價格"
-#: part/models.py:3409
+#: part/models.py:3390
msgid "Minimum price of part from external suppliers"
msgstr "外部供應商零件的最低價格"
-#: part/models.py:3415
+#: part/models.py:3396
msgid "Maximum Supplier Price"
msgstr "供應商最高價格"
-#: part/models.py:3416
+#: part/models.py:3397
msgid "Maximum price of part from external suppliers"
msgstr "來自外部供應商的商零件的最高價格"
-#: part/models.py:3422
+#: part/models.py:3403
msgid "Minimum Variant Cost"
msgstr "最小變體成本"
-#: part/models.py:3423
+#: part/models.py:3404
msgid "Calculated minimum cost of variant parts"
msgstr "計算出的變體零件的最低成本"
-#: part/models.py:3429
+#: part/models.py:3410
msgid "Maximum Variant Cost"
msgstr "最大變體成本"
-#: part/models.py:3430
+#: part/models.py:3411
msgid "Calculated maximum cost of variant parts"
msgstr "計算出的變體零件的最大成本"
-#: part/models.py:3436 part/models.py:3450
+#: part/models.py:3417 part/models.py:3431
msgid "Minimum Cost"
msgstr "最低成本"
-#: part/models.py:3437
+#: part/models.py:3418
msgid "Override minimum cost"
msgstr "覆蓋最低成本"
-#: part/models.py:3443 part/models.py:3457
+#: part/models.py:3424 part/models.py:3438
msgid "Maximum Cost"
msgstr "最高成本"
-#: part/models.py:3444
+#: part/models.py:3425
msgid "Override maximum cost"
msgstr "覆蓋最大成本"
-#: part/models.py:3451
+#: part/models.py:3432
msgid "Calculated overall minimum cost"
msgstr "計算總最低成本"
-#: part/models.py:3458
+#: part/models.py:3439
msgid "Calculated overall maximum cost"
msgstr "計算總最大成本"
-#: part/models.py:3464
+#: part/models.py:3445
msgid "Minimum Sale Price"
msgstr "最低售出價格"
-#: part/models.py:3465
+#: part/models.py:3446
msgid "Minimum sale price based on price breaks"
msgstr "基於批發價的最低售出價格"
-#: part/models.py:3471
+#: part/models.py:3452
msgid "Maximum Sale Price"
msgstr "最高售出價格"
-#: part/models.py:3472
+#: part/models.py:3453
msgid "Maximum sale price based on price breaks"
msgstr "基於批發價的最大售出價格"
-#: part/models.py:3478
+#: part/models.py:3459
msgid "Minimum Sale Cost"
msgstr "最低銷售成本"
-#: part/models.py:3479
+#: part/models.py:3460
msgid "Minimum historical sale price"
msgstr "歷史最低售出價格"
-#: part/models.py:3485
+#: part/models.py:3466
msgid "Maximum Sale Cost"
msgstr "最高銷售成本"
-#: part/models.py:3486
+#: part/models.py:3467
msgid "Maximum historical sale price"
msgstr "歷史最高售出價格"
-#: part/models.py:3504
+#: part/models.py:3485
msgid "Part for stocktake"
msgstr "用於盤點的零件"
-#: part/models.py:3509
+#: part/models.py:3490
msgid "Item Count"
msgstr "物品數量"
-#: part/models.py:3510
+#: part/models.py:3491
msgid "Number of individual stock entries at time of stocktake"
msgstr "盤點時的個別庫存條目數"
-#: part/models.py:3518
+#: part/models.py:3499
msgid "Total available stock at time of stocktake"
msgstr "盤點時可用庫存總額"
-#: part/models.py:3522 report/templates/report/inventree_test_report.html:106
+#: part/models.py:3503 report/templates/report/inventree_test_report.html:106
msgid "Date"
msgstr "日期"
-#: part/models.py:3523
+#: part/models.py:3504
msgid "Date stocktake was performed"
msgstr "進行盤點的日期"
-#: part/models.py:3530
+#: part/models.py:3511
msgid "Minimum Stock Cost"
msgstr "最低庫存成本"
-#: part/models.py:3531
+#: part/models.py:3512
msgid "Estimated minimum cost of stock on hand"
msgstr "現有存庫存最低成本估算"
-#: part/models.py:3537
+#: part/models.py:3518
msgid "Maximum Stock Cost"
msgstr "最高庫存成本"
-#: part/models.py:3538
+#: part/models.py:3519
msgid "Estimated maximum cost of stock on hand"
msgstr "目前庫存最高成本估算"
-#: part/models.py:3548
+#: part/models.py:3529
msgid "Part Sale Price Break"
msgstr "零件售出價格折扣"
-#: part/models.py:3660
+#: part/models.py:3641
msgid "Part Test Template"
msgstr "零件測試模板"
-#: part/models.py:3686
+#: part/models.py:3667
msgid "Invalid template name - must include at least one alphanumeric character"
msgstr "模板名稱無效 - 必須包含至少一個字母或者數字"
-#: part/models.py:3718
+#: part/models.py:3699
msgid "Test templates can only be created for testable parts"
msgstr "測試模板只能為可拆分的部件創建"
-#: part/models.py:3732
+#: part/models.py:3713
msgid "Test template with the same key already exists for part"
msgstr "零件已存在具有相同主鍵的測試模板"
-#: part/models.py:3749
+#: part/models.py:3730
msgid "Test Name"
msgstr "測試名"
-#: part/models.py:3750
+#: part/models.py:3731
msgid "Enter a name for the test"
msgstr "輸入測試的名稱"
-#: part/models.py:3756
+#: part/models.py:3737
msgid "Test Key"
msgstr "測試主鍵"
-#: part/models.py:3757
+#: part/models.py:3738
msgid "Simplified key for the test"
msgstr "簡化測試主鍵"
-#: part/models.py:3764
+#: part/models.py:3745
msgid "Test Description"
msgstr "測試説明"
-#: part/models.py:3765
+#: part/models.py:3746
msgid "Enter description for this test"
msgstr "輸入測試的描述"
-#: part/models.py:3769
+#: part/models.py:3750
msgid "Is this test enabled?"
msgstr "此測試是否已啓用?"
-#: part/models.py:3774
+#: part/models.py:3755
msgid "Required"
msgstr "必須的"
-#: part/models.py:3775
+#: part/models.py:3756
msgid "Is this test required to pass?"
msgstr "需要此測試才能通過嗎?"
-#: part/models.py:3780
+#: part/models.py:3761
msgid "Requires Value"
msgstr "需要值"
-#: part/models.py:3781
+#: part/models.py:3762
msgid "Does this test require a value when adding a test result?"
msgstr "添加測試結果時是否需要一個值?"
-#: part/models.py:3786
+#: part/models.py:3767
msgid "Requires Attachment"
msgstr "需要附件"
-#: part/models.py:3788
+#: part/models.py:3769
msgid "Does this test require a file attachment when adding a test result?"
msgstr "添加測試結果時是否需要文件附件?"
-#: part/models.py:3795
+#: part/models.py:3776
msgid "Valid choices for this test (comma-separated)"
msgstr "此測試的有效選擇 (逗號分隔)"
-#: part/models.py:3977
+#: part/models.py:3970
msgid "BOM item cannot be modified - assembly is locked"
msgstr "物料清單項目不能被修改 - 裝配已鎖定"
-#: part/models.py:3984
+#: part/models.py:3977
msgid "BOM item cannot be modified - variant assembly is locked"
msgstr "物料清單項目不能修改 - 變體裝配已鎖定"
-#: part/models.py:3994
+#: part/models.py:3987
msgid "Select parent part"
msgstr "選擇父零件"
-#: part/models.py:4004
+#: part/models.py:3997
msgid "Sub part"
msgstr "子零件"
-#: part/models.py:4005
+#: part/models.py:3998
msgid "Select part to be used in BOM"
msgstr "選擇要用於物料清單的零件"
-#: part/models.py:4016
+#: part/models.py:4009
msgid "BOM quantity for this BOM item"
msgstr "此物料清單項目的數量"
-#: part/models.py:4022
+#: part/models.py:4015
msgid "This BOM item is optional"
msgstr "此物料清單項目是可選的"
-#: part/models.py:4028
+#: part/models.py:4021
msgid "This BOM item is consumable (it is not tracked in build orders)"
msgstr "這個物料清單項目是耗材 (它沒有在生產訂單中被追蹤)"
-#: part/models.py:4036
+#: part/models.py:4029
msgid "Setup Quantity"
msgstr "建置額外數量"
-#: part/models.py:4037
+#: part/models.py:4030
msgid "Extra required quantity for a build, to account for setup losses"
msgstr "為彌補建置 / 開工損耗所需的額外數量"
-#: part/models.py:4045
+#: part/models.py:4038
msgid "Attrition"
msgstr "損耗率"
-#: part/models.py:4047
+#: part/models.py:4040
msgid "Estimated attrition for a build, expressed as a percentage (0-100)"
msgstr "製造預估損耗(百分比 0–100)"
-#: part/models.py:4058
+#: part/models.py:4051
msgid "Rounding Multiple"
msgstr "進位倍數"
-#: part/models.py:4060
+#: part/models.py:4053
msgid "Round up required production quantity to nearest multiple of this value"
msgstr "將所需生產數量向上取整到此數值的整數倍"
-#: part/models.py:4068
+#: part/models.py:4061
msgid "BOM item reference"
msgstr "物料清單項目引用"
-#: part/models.py:4076
+#: part/models.py:4069
msgid "BOM item notes"
msgstr "物料清單項目註釋"
-#: part/models.py:4082
+#: part/models.py:4075
msgid "Checksum"
msgstr "校驗和"
-#: part/models.py:4083
+#: part/models.py:4076
msgid "BOM line checksum"
msgstr "物料清單行校驗和"
-#: part/models.py:4088
+#: part/models.py:4081
msgid "Validated"
msgstr "已驗證"
-#: part/models.py:4089
+#: part/models.py:4082
msgid "This BOM item has been validated"
msgstr "此物料清單項目已驗證"
-#: part/models.py:4094
+#: part/models.py:4087
msgid "Gets inherited"
msgstr "獲取繼承的"
-#: part/models.py:4095
+#: part/models.py:4088
msgid "This BOM item is inherited by BOMs for variant parts"
msgstr "此物料清單項目是由物料清單繼承的變體零件"
-#: part/models.py:4101
+#: part/models.py:4094
msgid "Stock items for variant parts can be used for this BOM item"
msgstr "變體零件的庫存項可以用於此物料清單項目"
-#: part/models.py:4208 stock/models.py:925
+#: part/models.py:4201 stock/models.py:911
msgid "Quantity must be integer value for trackable parts"
msgstr "可追蹤零件的數量必須是整數"
-#: part/models.py:4218 part/models.py:4220
+#: part/models.py:4211 part/models.py:4213
msgid "Sub part must be specified"
msgstr "必須指定子零件"
-#: part/models.py:4371
+#: part/models.py:4364
msgid "BOM Item Substitute"
msgstr "物料清單項目替代品"
-#: part/models.py:4392
+#: part/models.py:4385
msgid "Substitute part cannot be the same as the master part"
msgstr "替代品零件不能與主零件相同"
-#: part/models.py:4405
+#: part/models.py:4398
msgid "Parent BOM item"
msgstr "上級物料清單項目"
-#: part/models.py:4413
+#: part/models.py:4406
msgid "Substitute part"
msgstr "替代品零件"
-#: part/models.py:4429
+#: part/models.py:4422
msgid "Part 1"
msgstr "零件 1"
-#: part/models.py:4437
+#: part/models.py:4430
msgid "Part 2"
msgstr "零件2"
-#: part/models.py:4438
+#: part/models.py:4431
msgid "Select Related Part"
msgstr "選擇相關的零件"
-#: part/models.py:4445
+#: part/models.py:4438
msgid "Note for this relationship"
msgstr "此關係的備註"
-#: part/models.py:4464
+#: part/models.py:4457
msgid "Part relationship cannot be created between a part and itself"
msgstr "零件關係不能在零件和自身之間創建"
-#: part/models.py:4469
+#: part/models.py:4462
msgid "Duplicate relationship already exists"
msgstr "複製關係已經存在"
@@ -6465,203 +6469,199 @@ msgstr "與此製造商零件編號 (MPN) 的相匹配的製造商零件已存
msgid "Supplier part matching this SKU already exists"
msgstr "匹配此庫存單位 (SKU) 的供應商零件已存在"
-#: part/serializers.py:799
+#: part/serializers.py:786
msgid "Category Name"
msgstr "類別名稱"
-#: part/serializers.py:828
+#: part/serializers.py:815
msgid "Building"
msgstr "正在生產"
-#: part/serializers.py:829
+#: part/serializers.py:816
msgid "Quantity of this part currently being in production"
msgstr "此零件目前生產中數量"
-#: part/serializers.py:836
+#: part/serializers.py:823
msgid "Outstanding quantity of this part scheduled to be built"
msgstr "此零件排程待製造未完成數量"
-#: part/serializers.py:856 stock/serializers.py:1019 stock/serializers.py:1189
+#: part/serializers.py:843 stock/serializers.py:1019 stock/serializers.py:1191
#: users/ruleset.py:30
msgid "Stock Items"
msgstr "庫存項"
-#: part/serializers.py:860
+#: part/serializers.py:847
msgid "Revisions"
msgstr "修訂"
-#: part/serializers.py:864
-msgid "Suppliers"
-msgstr "供應商"
-
-#: part/serializers.py:868 part/serializers.py:1162
+#: part/serializers.py:851 part/serializers.py:1143
#: templates/email/low_stock_notification.html:16
#: templates/email/part_event_notification.html:17
msgid "Total Stock"
msgstr "庫存總量"
-#: part/serializers.py:876
+#: part/serializers.py:859
msgid "Unallocated Stock"
msgstr "未分配的庫存"
-#: part/serializers.py:884
+#: part/serializers.py:867
msgid "Variant Stock"
msgstr "變體庫存"
-#: part/serializers.py:943
+#: part/serializers.py:923
msgid "Duplicate Part"
msgstr "重複零件"
-#: part/serializers.py:944
+#: part/serializers.py:924
msgid "Copy initial data from another Part"
msgstr "從另一個零件複製初始數據"
-#: part/serializers.py:950
+#: part/serializers.py:930
msgid "Initial Stock"
msgstr "初始庫存"
-#: part/serializers.py:951
+#: part/serializers.py:931
msgid "Create Part with initial stock quantity"
msgstr "創建具有初始庫存數量的零件"
-#: part/serializers.py:957
+#: part/serializers.py:937
msgid "Supplier Information"
msgstr "供應商信息"
-#: part/serializers.py:958
+#: part/serializers.py:938
msgid "Add initial supplier information for this part"
msgstr "添加此零件的初始供應商信息"
-#: part/serializers.py:966
+#: part/serializers.py:947
msgid "Copy Category Parameters"
msgstr "複製類別參數"
-#: part/serializers.py:967
+#: part/serializers.py:948
msgid "Copy parameter templates from selected part category"
msgstr "從選擇的零件複製參數模版"
-#: part/serializers.py:972
+#: part/serializers.py:953
msgid "Existing Image"
msgstr "現有的圖片"
-#: part/serializers.py:973
+#: part/serializers.py:954
msgid "Filename of an existing part image"
msgstr "現有零件圖片的文件名"
-#: part/serializers.py:990
+#: part/serializers.py:971
msgid "Image file does not exist"
msgstr "圖片不存在"
-#: part/serializers.py:1134
+#: part/serializers.py:1115
msgid "Validate entire Bill of Materials"
msgstr "驗證整個物料清單"
-#: part/serializers.py:1168 part/serializers.py:1634
+#: part/serializers.py:1149 part/serializers.py:1623
msgid "Can Build"
msgstr "可以創建"
-#: part/serializers.py:1185
+#: part/serializers.py:1166
msgid "Required for Build Orders"
msgstr "生產工單需求數"
-#: part/serializers.py:1190
+#: part/serializers.py:1171
msgid "Allocated to Build Orders"
msgstr "已分配至生產工單"
-#: part/serializers.py:1197
+#: part/serializers.py:1178
msgid "Required for Sales Orders"
msgstr "銷售訂單需求數"
-#: part/serializers.py:1201
+#: part/serializers.py:1182
msgid "Allocated to Sales Orders"
msgstr "已分配至銷售訂單"
-#: part/serializers.py:1340
+#: part/serializers.py:1321
msgid "Minimum Price"
msgstr "最低價格"
-#: part/serializers.py:1341
+#: part/serializers.py:1322
msgid "Override calculated value for minimum price"
msgstr "覆蓋已計算的最低價格值"
-#: part/serializers.py:1348
+#: part/serializers.py:1329
msgid "Minimum price currency"
msgstr "最低價格貨幣"
-#: part/serializers.py:1355
+#: part/serializers.py:1336
msgid "Maximum Price"
msgstr "最高價格"
-#: part/serializers.py:1356
+#: part/serializers.py:1337
msgid "Override calculated value for maximum price"
msgstr "覆蓋已計算的最高價格值"
-#: part/serializers.py:1363
+#: part/serializers.py:1344
msgid "Maximum price currency"
msgstr "最高價格貨幣"
-#: part/serializers.py:1392
+#: part/serializers.py:1373
msgid "Update"
msgstr "更新"
-#: part/serializers.py:1393
+#: part/serializers.py:1374
msgid "Update pricing for this part"
msgstr "更新這個零件的價格"
-#: part/serializers.py:1416
+#: part/serializers.py:1397
#, python-brace-format
msgid "Could not convert from provided currencies to {default_currency}"
msgstr "無法將所提供的貨幣轉換為 {default_currency}"
-#: part/serializers.py:1423
+#: part/serializers.py:1404
msgid "Minimum price must not be greater than maximum price"
msgstr "最低價格不能高於最高價格。"
-#: part/serializers.py:1426
+#: part/serializers.py:1407
msgid "Maximum price must not be less than minimum price"
msgstr "最高價格不能低於最低價格"
-#: part/serializers.py:1580
+#: part/serializers.py:1561
msgid "Select the parent assembly"
msgstr "選擇父裝配"
-#: part/serializers.py:1600
+#: part/serializers.py:1589
msgid "Select the component part"
msgstr "選擇零部件"
-#: part/serializers.py:1802
+#: part/serializers.py:1791
msgid "Select part to copy BOM from"
msgstr "選擇要複製物料清單的零件"
-#: part/serializers.py:1810
+#: part/serializers.py:1799
msgid "Remove Existing Data"
msgstr "移除現有數據"
-#: part/serializers.py:1811
+#: part/serializers.py:1800
msgid "Remove existing BOM items before copying"
msgstr "複製前刪除現有的物料清單項目"
-#: part/serializers.py:1816
+#: part/serializers.py:1805
msgid "Include Inherited"
msgstr "包含繼承的"
-#: part/serializers.py:1817
+#: part/serializers.py:1806
msgid "Include BOM items which are inherited from templated parts"
msgstr "包含從模板零件繼承的物料清單項目"
-#: part/serializers.py:1822
+#: part/serializers.py:1811
msgid "Skip Invalid Rows"
msgstr "跳過無效行"
-#: part/serializers.py:1823
+#: part/serializers.py:1812
msgid "Enable this option to skip invalid rows"
msgstr "啓用此選項以跳過無效行"
-#: part/serializers.py:1828
+#: part/serializers.py:1817
msgid "Copy Substitute Parts"
msgstr "複製替代品零件"
-#: part/serializers.py:1829
+#: part/serializers.py:1818
msgid "Copy substitute parts when duplicate BOM items"
msgstr "複製物料清單項目時複製替代品零件"
@@ -6732,108 +6732,108 @@ msgstr "未指定操作"
msgid "No matching action found"
msgstr "未找到指定操作"
-#: plugin/base/barcodes/api.py:211
+#: plugin/base/barcodes/api.py:212
msgid "No match found for barcode data"
msgstr "未找到匹配條形碼數據"
-#: plugin/base/barcodes/api.py:215
+#: plugin/base/barcodes/api.py:216
msgid "Match found for barcode data"
msgstr "找到匹配條形碼數據"
-#: plugin/base/barcodes/api.py:253 plugin/base/barcodes/serializers.py:77
+#: plugin/base/barcodes/api.py:254 plugin/base/barcodes/serializers.py:77
msgid "Model is not supported"
msgstr "不支持模型"
-#: plugin/base/barcodes/api.py:258
+#: plugin/base/barcodes/api.py:259
msgid "Model instance not found"
msgstr "找不到模型實例"
-#: plugin/base/barcodes/api.py:287
+#: plugin/base/barcodes/api.py:288
msgid "Barcode matches existing item"
msgstr "條形碼匹配現有項目"
-#: plugin/base/barcodes/api.py:418
+#: plugin/base/barcodes/api.py:419
msgid "No matching part data found"
msgstr "沒有找到匹配的零件數據"
-#: plugin/base/barcodes/api.py:434
+#: plugin/base/barcodes/api.py:435
msgid "No matching supplier parts found"
msgstr "沒有找到匹配的供應商零件"
-#: plugin/base/barcodes/api.py:437
+#: plugin/base/barcodes/api.py:438
msgid "Multiple matching supplier parts found"
msgstr "找到多個匹配的供應商零件"
-#: plugin/base/barcodes/api.py:450 plugin/base/barcodes/api.py:677
+#: plugin/base/barcodes/api.py:451 plugin/base/barcodes/api.py:678
msgid "No matching plugin found for barcode data"
msgstr "沒有找到匹配條碼數據的插件"
-#: plugin/base/barcodes/api.py:460
+#: plugin/base/barcodes/api.py:461
msgid "Matched supplier part"
msgstr "匹配的供應商零件"
-#: plugin/base/barcodes/api.py:528
+#: plugin/base/barcodes/api.py:529
msgid "Item has already been received"
msgstr "項目已被接收"
-#: plugin/base/barcodes/api.py:576
+#: plugin/base/barcodes/api.py:577
msgid "No plugin match for supplier barcode"
msgstr "供應商條碼未匹配任何模組"
-#: plugin/base/barcodes/api.py:625
+#: plugin/base/barcodes/api.py:626
msgid "Multiple matching line items found"
msgstr "找到多個匹配的行項目"
-#: plugin/base/barcodes/api.py:628
+#: plugin/base/barcodes/api.py:629
msgid "No matching line item found"
msgstr "未找到匹配的行項目"
-#: plugin/base/barcodes/api.py:674
+#: plugin/base/barcodes/api.py:675
msgid "No sales order provided"
msgstr "未提供銷售訂單"
-#: plugin/base/barcodes/api.py:683
+#: plugin/base/barcodes/api.py:684
msgid "Barcode does not match an existing stock item"
msgstr "條形碼與現有的庫存項不匹配"
-#: plugin/base/barcodes/api.py:699
+#: plugin/base/barcodes/api.py:700
msgid "Stock item does not match line item"
msgstr "庫存項與行項目不匹配"
-#: plugin/base/barcodes/api.py:729
+#: plugin/base/barcodes/api.py:730
msgid "Insufficient stock available"
msgstr "可用庫存不足"
-#: plugin/base/barcodes/api.py:742
+#: plugin/base/barcodes/api.py:743
msgid "Stock item allocated to sales order"
msgstr "庫存項已分配到銷售訂單"
-#: plugin/base/barcodes/api.py:745
+#: plugin/base/barcodes/api.py:746
msgid "Not enough information"
msgstr "沒有足夠的信息"
-#: plugin/base/barcodes/mixins.py:308
+#: plugin/base/barcodes/mixins.py:309
#: plugin/builtin/barcodes/inventree_barcode.py:101
msgid "Found matching item"
msgstr "找到匹配項目"
-#: plugin/base/barcodes/mixins.py:374
+#: plugin/base/barcodes/mixins.py:375
msgid "Supplier part does not match line item"
msgstr "供應商零件與行項目不匹配"
-#: plugin/base/barcodes/mixins.py:377
+#: plugin/base/barcodes/mixins.py:378
msgid "Line item is already completed"
msgstr "行項目已完成"
-#: plugin/base/barcodes/mixins.py:414
+#: plugin/base/barcodes/mixins.py:415
msgid "Further information required to receive line item"
msgstr "需要更多信息以接收行項目"
-#: plugin/base/barcodes/mixins.py:422
+#: plugin/base/barcodes/mixins.py:423
msgid "Received purchase order line item"
msgstr "已收到採購訂單行項目"
-#: plugin/base/barcodes/mixins.py:429
+#: plugin/base/barcodes/mixins.py:430
msgid "Failed to receive line item"
msgstr "接收行項目失敗"
@@ -6972,7 +6972,7 @@ msgstr "提供條形碼本地支持"
#: plugin/builtin/barcodes/inventree_barcode.py:30
#: plugin/builtin/events/auto_create_builds.py:30
#: plugin/builtin/events/auto_issue_orders.py:19
-#: plugin/builtin/exporter/bom_exporter.py:73
+#: plugin/builtin/exporter/bom_exporter.py:74
#: plugin/builtin/exporter/inventree_exporter.py:17
#: plugin/builtin/exporter/parameter_exporter.py:32
#: plugin/builtin/exporter/stocktake_exporter.py:47
@@ -7070,111 +7070,111 @@ msgstr "發佈回溯日期訂單"
msgid "Automatically issue orders that are backdated"
msgstr "自動發佈被回溯日期的訂單"
-#: plugin/builtin/exporter/bom_exporter.py:21
+#: plugin/builtin/exporter/bom_exporter.py:22
msgid "Levels"
msgstr "階層數"
-#: plugin/builtin/exporter/bom_exporter.py:23
+#: plugin/builtin/exporter/bom_exporter.py:24
msgid "Number of levels to export - set to zero to export all BOM levels"
msgstr "要匯出的 BOM 階層數;設為 0 匯出全部階層"
-#: plugin/builtin/exporter/bom_exporter.py:30
-#: plugin/builtin/exporter/bom_exporter.py:114
+#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:118
msgid "Total Quantity"
msgstr "總用量"
-#: plugin/builtin/exporter/bom_exporter.py:31
+#: plugin/builtin/exporter/bom_exporter.py:32
msgid "Include total quantity of each part in the BOM"
msgstr "包含每個零件於 BOM 中的總需求量"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Stock Data"
msgstr "庫存資料"
-#: plugin/builtin/exporter/bom_exporter.py:35
+#: plugin/builtin/exporter/bom_exporter.py:36
msgid "Include part stock data"
msgstr "包含零件庫存資料"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Pricing Data"
msgstr "價格資料"
-#: plugin/builtin/exporter/bom_exporter.py:39
+#: plugin/builtin/exporter/bom_exporter.py:40
#: plugin/builtin/exporter/stocktake_exporter.py:20
msgid "Include part pricing data"
msgstr "包含零件價格資料"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Supplier Data"
msgstr "供應商資料"
-#: plugin/builtin/exporter/bom_exporter.py:43
+#: plugin/builtin/exporter/bom_exporter.py:44
msgid "Include supplier data"
msgstr "包含供應商資料"
-#: plugin/builtin/exporter/bom_exporter.py:48
+#: plugin/builtin/exporter/bom_exporter.py:49
msgid "Manufacturer Data"
msgstr "製造商資料"
-#: plugin/builtin/exporter/bom_exporter.py:49
+#: plugin/builtin/exporter/bom_exporter.py:50
msgid "Include manufacturer data"
msgstr "包含製造商資料"
-#: plugin/builtin/exporter/bom_exporter.py:54
+#: plugin/builtin/exporter/bom_exporter.py:55
msgid "Substitute Data"
msgstr "替代料資料"
-#: plugin/builtin/exporter/bom_exporter.py:55
+#: plugin/builtin/exporter/bom_exporter.py:56
msgid "Include substitute part data"
msgstr "包含替代零件資料"
-#: plugin/builtin/exporter/bom_exporter.py:60
+#: plugin/builtin/exporter/bom_exporter.py:61
msgid "Parameter Data"
msgstr "參數資料"
-#: plugin/builtin/exporter/bom_exporter.py:61
+#: plugin/builtin/exporter/bom_exporter.py:62
msgid "Include part parameter data"
msgstr "包含零件參數資料"
-#: plugin/builtin/exporter/bom_exporter.py:70
+#: plugin/builtin/exporter/bom_exporter.py:71
msgid "Multi-Level BOM Exporter"
msgstr "多層 BOM 匯出器"
-#: plugin/builtin/exporter/bom_exporter.py:71
+#: plugin/builtin/exporter/bom_exporter.py:72
msgid "Provides support for exporting multi-level BOMs"
msgstr "支援匯出多層 BOM"
-#: plugin/builtin/exporter/bom_exporter.py:110
+#: plugin/builtin/exporter/bom_exporter.py:114
msgid "BOM Level"
msgstr "BOM 階層"
-#: plugin/builtin/exporter/bom_exporter.py:120
+#: plugin/builtin/exporter/bom_exporter.py:124
#, python-brace-format
msgid "Substitute {n}"
msgstr "替代品 {n}"
-#: plugin/builtin/exporter/bom_exporter.py:126
+#: plugin/builtin/exporter/bom_exporter.py:130
#, python-brace-format
msgid "Supplier {n}"
msgstr "供應商 {n}"
-#: plugin/builtin/exporter/bom_exporter.py:127
+#: plugin/builtin/exporter/bom_exporter.py:131
#, python-brace-format
msgid "Supplier {n} SKU"
msgstr "供應商 {n} SKU"
-#: plugin/builtin/exporter/bom_exporter.py:128
+#: plugin/builtin/exporter/bom_exporter.py:132
#, python-brace-format
msgid "Supplier {n} MPN"
msgstr "供應商 {n} MPN"
-#: plugin/builtin/exporter/bom_exporter.py:134
+#: plugin/builtin/exporter/bom_exporter.py:138
#, python-brace-format
msgid "Manufacturer {n}"
msgstr "製造商 {n}"
-#: plugin/builtin/exporter/bom_exporter.py:135
+#: plugin/builtin/exporter/bom_exporter.py:139
#, python-brace-format
msgid "Manufacturer {n} MPN"
msgstr "製造商 {n} MPN"
@@ -7354,11 +7354,11 @@ msgstr "InvenTree 設備標籤打印機"
msgid "Provides support for printing using a machine"
msgstr "提供使用設備打印的支持"
-#: plugin/builtin/labels/inventree_machine.py:162
+#: plugin/builtin/labels/inventree_machine.py:164
msgid "last used"
msgstr "最近使用"
-#: plugin/builtin/labels/inventree_machine.py:179
+#: plugin/builtin/labels/inventree_machine.py:181
msgid "Options"
msgstr "選項"
@@ -8072,7 +8072,7 @@ msgstr "總計"
#: report/templates/report/inventree_return_order_report.html:25
#: report/templates/report/inventree_sales_order_shipment_report.html:45
#: report/templates/report/inventree_stock_report_merge.html:88
-#: report/templates/report/inventree_test_report.html:88 stock/models.py:1083
+#: report/templates/report/inventree_test_report.html:88 stock/models.py:1069
#: stock/serializers.py:164 templates/email/stale_stock_notification.html:21
msgid "Serial Number"
msgstr "序列號"
@@ -8142,7 +8142,7 @@ msgstr "找不到圖片文件"
msgid "part_image tag requires a Part instance"
msgstr "parpart_image 標籤需要一個零件實例"
-#: report/templatetags/report.py:383
+#: report/templatetags/report.py:384
msgid "company_image tag requires a Company instance"
msgstr "公司_圖片標籤需要一個公司實例"
@@ -8158,7 +8158,7 @@ msgstr "按頂級位置篩選"
msgid "Include sub-locations in filtered results"
msgstr "在篩選結果中包含子地點"
-#: stock/api.py:344 stock/serializers.py:1185
+#: stock/api.py:344 stock/serializers.py:1187
msgid "Parent Location"
msgstr "上級地點"
@@ -8311,314 +8311,314 @@ msgstr "庫存地點類型"
msgid "Default icon for all locations that have no icon set (optional)"
msgstr "為所有沒有圖標的位置設置默認圖標(可選)"
-#: stock/models.py:159 stock/models.py:1045
+#: stock/models.py:145 stock/models.py:1031
msgid "Stock Location"
msgstr "庫存地點"
-#: stock/models.py:160 users/ruleset.py:29
+#: stock/models.py:146 users/ruleset.py:29
msgid "Stock Locations"
msgstr "庫存地點"
-#: stock/models.py:209 stock/models.py:1210
+#: stock/models.py:195 stock/models.py:1196
msgid "Owner"
msgstr "所有者"
-#: stock/models.py:210 stock/models.py:1211
+#: stock/models.py:196 stock/models.py:1197
msgid "Select Owner"
msgstr "選擇所有者"
-#: stock/models.py:218
+#: stock/models.py:204
msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations."
msgstr "庫存項可能不直接位於結構庫存地點,但可能位於其子地點。"
-#: stock/models.py:225 users/models.py:497
+#: stock/models.py:211 users/models.py:497
msgid "External"
msgstr "外部"
-#: stock/models.py:226
+#: stock/models.py:212
msgid "This is an external stock location"
msgstr "這是一個外部庫存地點"
-#: stock/models.py:232
+#: stock/models.py:218
msgid "Location type"
msgstr "位置類型"
-#: stock/models.py:236
+#: stock/models.py:222
msgid "Stock location type of this location"
msgstr "該位置的庫存地點類型"
-#: stock/models.py:308
+#: stock/models.py:294
msgid "You cannot make this stock location structural because some stock items are already located into it!"
msgstr "您不能將此庫存地點設置為結構性,因為某些庫存項已經位於它!"
-#: stock/models.py:594
+#: stock/models.py:580
#, python-brace-format
msgid "{field} does not exist"
msgstr "{field} 不存在"
-#: stock/models.py:607
+#: stock/models.py:593
msgid "Part must be specified"
msgstr "必須指定零件"
-#: stock/models.py:904
+#: stock/models.py:890
msgid "Stock items cannot be located into structural stock locations!"
msgstr "庫存項不能存放在結構性庫存地點!"
-#: stock/models.py:931 stock/serializers.py:453
+#: stock/models.py:917 stock/serializers.py:455
msgid "Stock item cannot be created for virtual parts"
msgstr "無法為虛擬零件創建庫存項"
-#: stock/models.py:948
+#: stock/models.py:934
#, python-brace-format
msgid "Part type ('{self.supplier_part.part}') must be {self.part}"
msgstr "零件類型 ('{self.supplier_part.part}') 必須為 {self.part}"
-#: stock/models.py:958 stock/models.py:971
+#: stock/models.py:944 stock/models.py:957
msgid "Quantity must be 1 for item with a serial number"
msgstr "有序列號的項目的數量必須是1"
-#: stock/models.py:961
+#: stock/models.py:947
msgid "Serial number cannot be set if quantity greater than 1"
msgstr "如果數量大於1,則不能設置序列號"
-#: stock/models.py:983
+#: stock/models.py:969
msgid "Item cannot belong to itself"
msgstr "項目不能屬於其自身"
-#: stock/models.py:988
+#: stock/models.py:974
msgid "Item must have a build reference if is_building=True"
msgstr "如果is_building=True,則項必須具有構建引用"
-#: stock/models.py:1001
+#: stock/models.py:987
msgid "Build reference does not point to the same part object"
msgstr "構建引用未指向同一零件對象"
-#: stock/models.py:1015
+#: stock/models.py:1001
msgid "Parent Stock Item"
msgstr "母庫存項目"
-#: stock/models.py:1027
+#: stock/models.py:1013
msgid "Base part"
msgstr "基礎零件"
-#: stock/models.py:1037
+#: stock/models.py:1023
msgid "Select a matching supplier part for this stock item"
msgstr "為此庫存項目選擇匹配的供應商零件"
-#: stock/models.py:1049
+#: stock/models.py:1035
msgid "Where is this stock item located?"
msgstr "這個庫存物品在哪裏?"
-#: stock/models.py:1057 stock/serializers.py:1607
+#: stock/models.py:1043 stock/serializers.py:1613
msgid "Packaging this stock item is stored in"
msgstr "包裝此庫存物品存儲在"
-#: stock/models.py:1063
+#: stock/models.py:1049
msgid "Installed In"
msgstr "安裝於"
-#: stock/models.py:1068
+#: stock/models.py:1054
msgid "Is this item installed in another item?"
msgstr "此項目是否安裝在另一個項目中?"
-#: stock/models.py:1087
+#: stock/models.py:1073
msgid "Serial number for this item"
msgstr "此項目的序列號"
-#: stock/models.py:1104 stock/serializers.py:1592
+#: stock/models.py:1090 stock/serializers.py:1598
msgid "Batch code for this stock item"
msgstr "此庫存項的批號"
-#: stock/models.py:1109
+#: stock/models.py:1095
msgid "Stock Quantity"
msgstr "庫存數量"
-#: stock/models.py:1119
+#: stock/models.py:1105
msgid "Source Build"
msgstr "源代碼構建"
-#: stock/models.py:1122
+#: stock/models.py:1108
msgid "Build for this stock item"
msgstr "為此庫存項目構建"
-#: stock/models.py:1129
+#: stock/models.py:1115
msgid "Consumed By"
msgstr "消費者"
-#: stock/models.py:1132
+#: stock/models.py:1118
msgid "Build order which consumed this stock item"
msgstr "構建消耗此庫存項的生產訂單"
-#: stock/models.py:1141
+#: stock/models.py:1127
msgid "Source Purchase Order"
msgstr "採購訂單來源"
-#: stock/models.py:1145
+#: stock/models.py:1131
msgid "Purchase order for this stock item"
msgstr "此庫存商品的採購訂單"
-#: stock/models.py:1151
+#: stock/models.py:1137
msgid "Destination Sales Order"
msgstr "目的地銷售訂單"
-#: stock/models.py:1162
+#: stock/models.py:1148
msgid "Expiry date for stock item. Stock will be considered expired after this date"
msgstr "庫存物品的到期日。在此日期之後,庫存將被視為過期"
-#: stock/models.py:1180
+#: stock/models.py:1166
msgid "Delete on deplete"
msgstr "耗盡時刪除"
-#: stock/models.py:1181
+#: stock/models.py:1167
msgid "Delete this Stock Item when stock is depleted"
msgstr "當庫存耗盡時刪除此庫存項"
-#: stock/models.py:1202
+#: stock/models.py:1188
msgid "Single unit purchase price at time of purchase"
msgstr "購買時一個單位的價格"
-#: stock/models.py:1233
+#: stock/models.py:1219
msgid "Converted to part"
msgstr "轉換為零件"
-#: stock/models.py:1435
+#: stock/models.py:1421
msgid "Quantity exceeds available stock"
msgstr "數量超過可用庫存"
-#: stock/models.py:1869
+#: stock/models.py:1855
msgid "Part is not set as trackable"
msgstr "零件未設置為可跟蹤"
-#: stock/models.py:1875
+#: stock/models.py:1861
msgid "Quantity must be integer"
msgstr "數量必須是整數"
-#: stock/models.py:1883
+#: stock/models.py:1869
#, python-brace-format
msgid "Quantity must not exceed available stock quantity ({self.quantity})"
msgstr "數量不得超過現有庫存量 ({self.quantity})"
-#: stock/models.py:1889
+#: stock/models.py:1875
msgid "Serial numbers must be provided as a list"
msgstr "序列號需以清單提供"
-#: stock/models.py:1894
+#: stock/models.py:1880
msgid "Quantity does not match serial numbers"
msgstr "數量不匹配序列號"
-#: stock/models.py:1912
+#: stock/models.py:1898
msgid "Cannot assign stock to structural location"
msgstr ""
-#: stock/models.py:2029 stock/models.py:2934
+#: stock/models.py:2015 stock/models.py:2920
msgid "Test template does not exist"
msgstr "測試模板不存在"
-#: stock/models.py:2047
+#: stock/models.py:2033
msgid "Stock item has been assigned to a sales order"
msgstr "庫存項已分配到銷售訂單"
-#: stock/models.py:2051
+#: stock/models.py:2037
msgid "Stock item is installed in another item"
msgstr "庫存項已安裝在另一個項目中"
-#: stock/models.py:2054
+#: stock/models.py:2040
msgid "Stock item contains other items"
msgstr "庫存項包含其他項目"
-#: stock/models.py:2057
+#: stock/models.py:2043
msgid "Stock item has been assigned to a customer"
msgstr "庫存項已分配給客户"
-#: stock/models.py:2060 stock/models.py:2243
+#: stock/models.py:2046 stock/models.py:2229
msgid "Stock item is currently in production"
msgstr "庫存項目前正在生產"
-#: stock/models.py:2063
+#: stock/models.py:2049
msgid "Serialized stock cannot be merged"
msgstr "序列化的庫存不能合併"
-#: stock/models.py:2070 stock/serializers.py:1462
+#: stock/models.py:2056 stock/serializers.py:1468
msgid "Duplicate stock items"
msgstr "複製庫存項"
-#: stock/models.py:2074
+#: stock/models.py:2060
msgid "Stock items must refer to the same part"
msgstr "庫存項必須指相同零件"
-#: stock/models.py:2082
+#: stock/models.py:2068
msgid "Stock items must refer to the same supplier part"
msgstr "庫存項必須是同一供應商的零件"
-#: stock/models.py:2087
+#: stock/models.py:2073
msgid "Stock status codes must match"
msgstr "庫存狀態碼必須匹配"
-#: stock/models.py:2366
+#: stock/models.py:2352
msgid "StockItem cannot be moved as it is not in stock"
msgstr "庫存項不能移動,因為它沒有庫存"
-#: stock/models.py:2835
+#: stock/models.py:2821
msgid "Stock Item Tracking"
msgstr "庫存項跟蹤"
-#: stock/models.py:2866
+#: stock/models.py:2852
msgid "Entry notes"
msgstr "條目註釋"
-#: stock/models.py:2906
+#: stock/models.py:2892
msgid "Stock Item Test Result"
msgstr "庫存項測試結果"
-#: stock/models.py:2937
+#: stock/models.py:2923
msgid "Value must be provided for this test"
msgstr "必須為此測試提供值"
-#: stock/models.py:2941
+#: stock/models.py:2927
msgid "Attachment must be uploaded for this test"
msgstr "測試附件必須上傳"
-#: stock/models.py:2946
+#: stock/models.py:2932
msgid "Invalid value for this test"
msgstr "此測試的值無效"
-#: stock/models.py:2970
+#: stock/models.py:2956
msgid "Test result"
msgstr "測試結果"
-#: stock/models.py:2977
+#: stock/models.py:2963
msgid "Test output value"
msgstr "測試輸出值"
-#: stock/models.py:2985 stock/serializers.py:248
+#: stock/models.py:2971 stock/serializers.py:250
msgid "Test result attachment"
msgstr "測驗結果附件"
-#: stock/models.py:2989
+#: stock/models.py:2975
msgid "Test notes"
msgstr "測試備註"
-#: stock/models.py:2997
+#: stock/models.py:2983
msgid "Test station"
msgstr "測試站"
-#: stock/models.py:2998
+#: stock/models.py:2984
msgid "The identifier of the test station where the test was performed"
msgstr "進行測試的測試站的標識符"
-#: stock/models.py:3004
+#: stock/models.py:2990
msgid "Started"
msgstr "已開始"
-#: stock/models.py:3005
+#: stock/models.py:2991
msgid "The timestamp of the test start"
msgstr "測試開始的時間戳"
-#: stock/models.py:3011
+#: stock/models.py:2997
msgid "Finished"
msgstr "已完成"
-#: stock/models.py:3012
+#: stock/models.py:2998
msgid "The timestamp of the test finish"
msgstr "測試結束的時間戳"
@@ -8662,43 +8662,43 @@ msgstr "選擇要生成序列號的零件"
msgid "Quantity of serial numbers to generate"
msgstr "要生成的序列號的數量"
-#: stock/serializers.py:235
+#: stock/serializers.py:236
msgid "Test template for this result"
msgstr "此結果的測試模板"
-#: stock/serializers.py:278
+#: stock/serializers.py:280
msgid "No matching test found for this part"
msgstr ""
-#: stock/serializers.py:282
+#: stock/serializers.py:284
msgid "Template ID or test name must be provided"
msgstr "必須提供模板 ID 或測試名稱"
-#: stock/serializers.py:292
+#: stock/serializers.py:294
msgid "The test finished time cannot be earlier than the test started time"
msgstr "測試完成時間不能早於測試開始時間"
-#: stock/serializers.py:414
+#: stock/serializers.py:416
msgid "Parent Item"
msgstr "父項"
-#: stock/serializers.py:415
+#: stock/serializers.py:417
msgid "Parent stock item"
msgstr "父庫存項"
-#: stock/serializers.py:438
+#: stock/serializers.py:440
msgid "Use pack size when adding: the quantity defined is the number of packs"
msgstr "添加時使用包裝尺寸:定義的數量是包裝的數量"
-#: stock/serializers.py:440
+#: stock/serializers.py:442
msgid "Use pack size"
msgstr "使用包裝數"
-#: stock/serializers.py:447 stock/serializers.py:700
+#: stock/serializers.py:449 stock/serializers.py:700
msgid "Enter serial numbers for new items"
msgstr "輸入新項目的序列號"
-#: stock/serializers.py:565
+#: stock/serializers.py:553
msgid "Supplier Part Number"
msgstr "供應商零件編號"
@@ -8732,8 +8732,8 @@ msgstr "未提供庫存項"
msgid "Quantity must not exceed available stock quantity ({q})"
msgstr "數量不得超過現有庫存量 ({q})"
-#: stock/serializers.py:711 stock/serializers.py:1419 stock/serializers.py:1740
-#: stock/serializers.py:1789
+#: stock/serializers.py:711 stock/serializers.py:1425 stock/serializers.py:1746
+#: stock/serializers.py:1795
msgid "Destination stock location"
msgstr "目標庫存位置"
@@ -8805,103 +8805,103 @@ msgstr "選擇要更改狀態的庫存項目"
msgid "No stock items selected"
msgstr "未選擇庫存商品"
-#: stock/serializers.py:1122 stock/serializers.py:1191
+#: stock/serializers.py:1122 stock/serializers.py:1193
msgid "Sublocations"
msgstr "轉租"
-#: stock/serializers.py:1186
+#: stock/serializers.py:1188
msgid "Parent stock location"
msgstr "上級庫存地點"
-#: stock/serializers.py:1291
+#: stock/serializers.py:1297
msgid "Part must be salable"
msgstr "零件必須可銷售"
-#: stock/serializers.py:1295
+#: stock/serializers.py:1301
msgid "Item is allocated to a sales order"
msgstr "物料已分配到銷售訂單"
-#: stock/serializers.py:1299
+#: stock/serializers.py:1305
msgid "Item is allocated to a build order"
msgstr "項目被分配到生產訂單中"
-#: stock/serializers.py:1323
+#: stock/serializers.py:1329
msgid "Customer to assign stock items"
msgstr "客户分配庫存項目"
-#: stock/serializers.py:1329
+#: stock/serializers.py:1335
msgid "Selected company is not a customer"
msgstr "所選公司不是客户"
-#: stock/serializers.py:1337
+#: stock/serializers.py:1343
msgid "Stock assignment notes"
msgstr "庫存分配説明"
-#: stock/serializers.py:1347 stock/serializers.py:1635
+#: stock/serializers.py:1353 stock/serializers.py:1641
msgid "A list of stock items must be provided"
msgstr "必須提供庫存物品清單"
-#: stock/serializers.py:1426
+#: stock/serializers.py:1432
msgid "Stock merging notes"
msgstr "庫存合併説明"
-#: stock/serializers.py:1431
+#: stock/serializers.py:1437
msgid "Allow mismatched suppliers"
msgstr "允許不匹配的供應商"
-#: stock/serializers.py:1432
+#: stock/serializers.py:1438
msgid "Allow stock items with different supplier parts to be merged"
msgstr "允許合併具有不同供應商零件的庫存項目"
-#: stock/serializers.py:1437
+#: stock/serializers.py:1443
msgid "Allow mismatched status"
msgstr "允許不匹配的狀態"
-#: stock/serializers.py:1438
+#: stock/serializers.py:1444
msgid "Allow stock items with different status codes to be merged"
msgstr "允許合併具有不同狀態代碼的庫存項目"
-#: stock/serializers.py:1448
+#: stock/serializers.py:1454
msgid "At least two stock items must be provided"
msgstr "必須提供至少兩件庫存物品"
-#: stock/serializers.py:1515
+#: stock/serializers.py:1521
msgid "No Change"
msgstr "無更改"
-#: stock/serializers.py:1553
+#: stock/serializers.py:1559
msgid "StockItem primary key value"
msgstr "庫存項主鍵值"
-#: stock/serializers.py:1566
+#: stock/serializers.py:1572
msgid "Stock item is not in stock"
msgstr "庫存項無庫存"
-#: stock/serializers.py:1569
+#: stock/serializers.py:1575
msgid "Stock item is already in stock"
msgstr "庫存項已在庫"
-#: stock/serializers.py:1583
+#: stock/serializers.py:1589
msgid "Quantity must not be negative"
msgstr "數量不可為負"
-#: stock/serializers.py:1625
+#: stock/serializers.py:1631
msgid "Stock transaction notes"
msgstr "庫存交易記錄"
-#: stock/serializers.py:1795
+#: stock/serializers.py:1801
msgid "Merge into existing stock"
msgstr "合併至現有庫存"
-#: stock/serializers.py:1796
+#: stock/serializers.py:1802
msgid "Merge returned items into existing stock items if possible"
msgstr "可行時將退回項目併入現有庫存"
-#: stock/serializers.py:1839
+#: stock/serializers.py:1845
msgid "Next Serial Number"
msgstr "下一個序列號"
-#: stock/serializers.py:1845
+#: stock/serializers.py:1851
msgid "Previous Serial Number"
msgstr "上一個序列號"
@@ -9383,83 +9383,83 @@ msgstr "銷售訂單"
msgid "Return Orders"
msgstr "退貨訂單"
-#: users/serializers.py:187
+#: users/serializers.py:190
msgid "Username"
msgstr "用户名"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First Name"
msgstr "名"
-#: users/serializers.py:190
+#: users/serializers.py:193
msgid "First name of the user"
msgstr "用户的名字(不包括姓氏)"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last Name"
msgstr "姓"
-#: users/serializers.py:194
+#: users/serializers.py:197
msgid "Last name of the user"
msgstr "用户的姓氏"
-#: users/serializers.py:198
+#: users/serializers.py:201
msgid "Email address of the user"
msgstr "用户的電子郵件地址"
-#: users/serializers.py:304
+#: users/serializers.py:309
msgid "Staff"
msgstr "職員"
-#: users/serializers.py:305
+#: users/serializers.py:310
msgid "Does this user have staff permissions"
msgstr "此用户是否擁有員工權限"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Superuser"
msgstr "超級用户"
-#: users/serializers.py:310
+#: users/serializers.py:315
msgid "Is this user a superuser"
msgstr "此用户是否為超級用户"
-#: users/serializers.py:314
+#: users/serializers.py:319
msgid "Is this user account active"
msgstr "此用户帳户是否已激活"
-#: users/serializers.py:326
+#: users/serializers.py:331
msgid "Only a superuser can adjust this field"
msgstr "僅超級使用者可調整此欄位"
-#: users/serializers.py:354
+#: users/serializers.py:359
msgid "Password"
msgstr "密碼"
-#: users/serializers.py:355
+#: users/serializers.py:360
msgid "Password for the user"
msgstr "使用者密碼"
-#: users/serializers.py:361
+#: users/serializers.py:366
msgid "Override warning"
msgstr "忽略警告"
-#: users/serializers.py:362
+#: users/serializers.py:367
msgid "Override the warning about password rules"
msgstr "忽略密碼規則警告"
-#: users/serializers.py:418
+#: users/serializers.py:423
msgid "You do not have permission to create users"
msgstr "您沒有建立使用者的權限"
-#: users/serializers.py:439
+#: users/serializers.py:444
msgid "Your account has been created."
msgstr "您的帳號已經建立完成。"
-#: users/serializers.py:441
+#: users/serializers.py:446
msgid "Please use the password reset function to login"
msgstr "請使用重設密碼功能來登入"
-#: users/serializers.py:447
+#: users/serializers.py:452
msgid "Welcome to InvenTree"
msgstr "歡迎使用 InvenTree"
diff --git a/src/backend/InvenTree/manage.py b/src/backend/InvenTree/manage.py
index 988cd61e3f..9e1d7b6804 100755
--- a/src/backend/InvenTree/manage.py
+++ b/src/backend/InvenTree/manage.py
@@ -17,6 +17,7 @@ def main():
'available on your PYTHONPATH environment variable? Did you '
'forget to activate a virtual environment?'
) from exc
+
execute_from_command_line(sys.argv)
diff --git a/src/backend/InvenTree/order/api.py b/src/backend/InvenTree/order/api.py
index 899f2b4411..c59fc2c22a 100644
--- a/src/backend/InvenTree/order/api.py
+++ b/src/backend/InvenTree/order/api.py
@@ -31,8 +31,8 @@ from generic.states.api import StatusView
from InvenTree.api import (
BulkUpdateMixin,
ListCreateDestroyAPIView,
- MetadataView,
ParameterListMixin,
+ meta_path,
)
from InvenTree.fields import InvenTreeOutputOption, OutputConfiguration
from InvenTree.filters import (
@@ -362,7 +362,9 @@ class PurchaseOrderOutputOptions(OutputConfiguration):
class PurchaseOrderMixin(SerializerContextMixin):
"""Mixin class for PurchaseOrder endpoints."""
- queryset = models.PurchaseOrder.objects.all()
+ queryset = models.PurchaseOrder.objects.all().prefetch_related(
+ 'supplier', 'created_by'
+ )
serializer_class = serializers.PurchaseOrderSerializer
def get_queryset(self, *args, **kwargs):
@@ -371,8 +373,6 @@ class PurchaseOrderMixin(SerializerContextMixin):
queryset = serializers.PurchaseOrderSerializer.annotate_queryset(queryset)
- queryset = queryset.prefetch_related('supplier', 'created_by')
-
return queryset
@@ -824,15 +824,15 @@ class SalesOrderFilter(OrderFilter):
class SalesOrderMixin(SerializerContextMixin):
"""Mixin class for SalesOrder endpoints."""
- queryset = models.SalesOrder.objects.all()
+ queryset = models.SalesOrder.objects.all().prefetch_related(
+ 'customer', 'created_by'
+ )
serializer_class = serializers.SalesOrderSerializer
def get_queryset(self, *args, **kwargs):
"""Return annotated queryset for this endpoint."""
queryset = super().get_queryset(*args, **kwargs)
- queryset = queryset.prefetch_related('customer', 'created_by')
-
queryset = serializers.SalesOrderSerializer.annotate_queryset(queryset)
return queryset
@@ -1888,11 +1888,7 @@ order_api_urls = [
name='api-po-complete',
),
path('issue/', PurchaseOrderIssue.as_view(), name='api-po-issue'),
- path(
- 'metadata/',
- MetadataView.as_view(model=models.PurchaseOrder),
- name='api-po-metadata',
- ),
+ meta_path(models.PurchaseOrder),
path(
'receive/',
PurchaseOrderReceive.as_view(),
@@ -1920,11 +1916,7 @@ order_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=models.PurchaseOrderLineItem),
- name='api-po-line-metadata',
- ),
+ meta_path(models.PurchaseOrderLineItem),
path(
'',
PurchaseOrderLineItemDetail.as_view(),
@@ -1942,11 +1934,7 @@ order_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=models.PurchaseOrderExtraLine),
- name='api-po-extra-line-metadata',
- ),
+ meta_path(models.PurchaseOrderExtraLine),
path(
'',
PurchaseOrderExtraLineDetail.as_view(),
@@ -1974,11 +1962,7 @@ order_api_urls = [
SalesOrderShipmentComplete.as_view(),
name='api-so-shipment-ship',
),
- path(
- 'metadata/',
- MetadataView.as_view(model=models.SalesOrderShipment),
- name='api-so-shipment-metadata',
- ),
+ meta_path(models.SalesOrderShipment),
path(
'',
SalesOrderShipmentDetail.as_view(),
@@ -2015,11 +1999,7 @@ order_api_urls = [
SalesOrderComplete.as_view(),
name='api-so-complete',
),
- path(
- 'metadata/',
- MetadataView.as_view(model=models.SalesOrder),
- name='api-so-metadata',
- ),
+ meta_path(models.SalesOrder),
# SalesOrder detail endpoint
path('', SalesOrderDetail.as_view(), name='api-so-detail'),
]),
@@ -2042,11 +2022,7 @@ order_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=models.SalesOrderLineItem),
- name='api-so-line-metadata',
- ),
+ meta_path(models.SalesOrderLineItem),
path(
'',
SalesOrderLineItemDetail.as_view(),
@@ -2064,11 +2040,7 @@ order_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=models.SalesOrderExtraLine),
- name='api-so-extra-line-metadata',
- ),
+ meta_path(models.SalesOrderExtraLine),
path(
'',
SalesOrderExtraLineDetail.as_view(),
@@ -2120,11 +2092,7 @@ order_api_urls = [
ReturnOrderReceive.as_view(),
name='api-return-order-receive',
),
- path(
- 'metadata/',
- MetadataView.as_view(model=models.ReturnOrder),
- name='api-return-order-metadata',
- ),
+ meta_path(models.ReturnOrder),
path(
'', ReturnOrderDetail.as_view(), name='api-return-order-detail'
),
@@ -2148,11 +2116,7 @@ order_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=models.ReturnOrderLineItem),
- name='api-return-order-line-metadata',
- ),
+ meta_path(models.ReturnOrderLineItem),
path(
'',
ReturnOrderLineItemDetail.as_view(),
@@ -2179,11 +2143,7 @@ order_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=models.ReturnOrderExtraLine),
- name='api-return-order-extra-line-metadata',
- ),
+ meta_path(models.ReturnOrderExtraLine),
path(
'',
ReturnOrderExtraLineDetail.as_view(),
diff --git a/src/backend/InvenTree/order/migrations/0085_auto_20230322_1056.py b/src/backend/InvenTree/order/migrations/0085_auto_20230322_1056.py
index ea3ad7223d..283af0886b 100644
--- a/src/backend/InvenTree/order/migrations/0085_auto_20230322_1056.py
+++ b/src/backend/InvenTree/order/migrations/0085_auto_20230322_1056.py
@@ -34,7 +34,7 @@ class Migration(migrations.Migration):
('reference', models.CharField(blank=True, help_text='Line item reference', max_length=100, verbose_name='Reference')),
('notes', models.CharField(blank=True, help_text='Line item notes', max_length=500, verbose_name='Notes')),
('target_date', models.DateField(blank=True, help_text='Target date for this line item (leave blank to use the target date from the order)', null=True, verbose_name='Target Date')),
- ('received_date', models.DateField(blank=True, help_text='The date this this return item was received', null=True, verbose_name='Received Date')),
+ ('received_date', models.DateField(blank=True, help_text='The date this return item was received', null=True, verbose_name='Received Date')),
('outcome', models.PositiveIntegerField(choices=[(10, 'Pending'), (20, 'Return'), (30, 'Repair'), (50, 'Refund'), (40, 'Replace'), (60, 'Reject')], default=10, help_text='Outcome for this line item', verbose_name='Outcome')),
('price_currency', djmoney.models.fields.CurrencyField(choices=[], default='', editable=False, max_length=3)),
('price', InvenTree.fields.InvenTreeModelMoneyField(blank=True, currency_choices=[], decimal_places=6, default_currency='', help_text='Cost associated with return or repair for this line item', max_digits=19, null=True, validators=[djmoney.models.validators.MinMoneyValidator(0)], verbose_name='Price')),
diff --git a/src/backend/InvenTree/order/models.py b/src/backend/InvenTree/order/models.py
index d159b988eb..6a54c2b277 100644
--- a/src/backend/InvenTree/order/models.py
+++ b/src/backend/InvenTree/order/models.py
@@ -432,7 +432,8 @@ class Order(
Makes use of the overdue_filter() method to avoid code duplication
"""
return (
- self.__class__.objects.filter(pk=self.pk)
+ self.__class__.objects
+ .filter(pk=self.pk)
.filter(self.__class__.overdue_filter())
.exists()
)
@@ -2909,7 +2910,7 @@ class ReturnOrder(TotalPriceMixin, Order):
line.item = stock_item
line.save()
- status = kwargs.get('status')
+ status = kwargs.get('status', StockStatus.QUARANTINED.value)
if status is None:
status = StockStatus.QUARANTINED.value
@@ -2920,7 +2921,7 @@ class ReturnOrder(TotalPriceMixin, Order):
deltas['customer'] = stock_item.customer.pk
# Update the StockItem
- stock_item.status = status
+ stock_item.set_status(status)
stock_item.location = location
stock_item.customer = None
stock_item.sales_order = None
@@ -3021,7 +3022,7 @@ class ReturnOrderLineItem(StatusCodeMixin, OrderLineItem):
null=True,
blank=True,
verbose_name=_('Received Date'),
- help_text=_('The date this this return item was received'),
+ help_text=_('The date this return item was received'),
)
@property
diff --git a/src/backend/InvenTree/order/test_api.py b/src/backend/InvenTree/order/test_api.py
index 58c74e7f6d..3166ca3134 100644
--- a/src/backend/InvenTree/order/test_api.py
+++ b/src/backend/InvenTree/order/test_api.py
@@ -2751,63 +2751,3 @@ class ReturnOrderLineItemTests(InvenTreeAPITestCase):
line = models.ReturnOrderLineItem.objects.get(pk=1)
self.assertEqual(float(line.price.amount), 15.75)
-
-
-class OrderMetadataAPITest(InvenTreeAPITestCase):
- """Unit tests for the various metadata endpoints of API."""
-
- fixtures = [
- 'category',
- 'part',
- 'company',
- 'location',
- 'supplier_part',
- 'stock',
- 'order',
- 'sales_order',
- 'return_order',
- ]
-
- roles = ['purchase_order.change', 'sales_order.change', 'return_order.change']
-
- def metatester(self, apikey, model):
- """Generic tester."""
- modeldata = model.objects.first()
-
- # Useless test unless a model object is found
- self.assertIsNotNone(modeldata)
-
- url = reverse(apikey, kwargs={'pk': modeldata.pk})
-
- # Metadata is initially null
- self.assertIsNone(modeldata.metadata)
-
- numstr = f'12{len(apikey)}'
-
- self.patch(
- url,
- {'metadata': {f'abc-{numstr}': f'xyz-{apikey}-{numstr}'}},
- expected_code=200,
- )
-
- # Refresh
- modeldata.refresh_from_db()
- self.assertEqual(
- modeldata.get_metadata(f'abc-{numstr}'), f'xyz-{apikey}-{numstr}'
- )
-
- def test_metadata(self):
- """Test all endpoints."""
- for apikey, model in {
- 'api-po-metadata': models.PurchaseOrder,
- 'api-po-line-metadata': models.PurchaseOrderLineItem,
- 'api-po-extra-line-metadata': models.PurchaseOrderExtraLine,
- 'api-so-shipment-metadata': models.SalesOrderShipment,
- 'api-so-metadata': models.SalesOrder,
- 'api-so-line-metadata': models.SalesOrderLineItem,
- 'api-so-extra-line-metadata': models.SalesOrderExtraLine,
- 'api-return-order-metadata': models.ReturnOrder,
- 'api-return-order-line-metadata': models.ReturnOrderLineItem,
- 'api-return-order-extra-line-metadata': models.ReturnOrderExtraLine,
- }.items():
- self.metatester(apikey, model)
diff --git a/src/backend/InvenTree/part/api.py b/src/backend/InvenTree/part/api.py
index 8e969dea30..64e3cabefb 100644
--- a/src/backend/InvenTree/part/api.py
+++ b/src/backend/InvenTree/part/api.py
@@ -18,8 +18,8 @@ from InvenTree.api import (
BulkDeleteMixin,
BulkUpdateMixin,
ListCreateDestroyAPIView,
- MetadataView,
ParameterListMixin,
+ meta_path,
)
from InvenTree.fields import InvenTreeOutputOption, OutputConfiguration
from InvenTree.filters import (
@@ -1009,7 +1009,9 @@ class PartMixin(SerializerContextMixin):
"""Mixin class for Part API endpoints."""
serializer_class = part_serializers.PartSerializer
- queryset = Part.objects.all().select_related('pricing_data')
+ queryset = (
+ Part.objects.all().select_related('pricing_data').prefetch_related('category')
+ )
starred_parts = None
is_create = False
@@ -1498,13 +1500,7 @@ part_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(
- model=PartCategoryParameterTemplate
- ),
- name='api-part-category-parameter-metadata',
- ),
+ meta_path(PartCategoryParameterTemplate),
path(
'',
CategoryParameterDetail.as_view(),
@@ -1523,11 +1519,7 @@ part_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=PartCategory),
- name='api-part-category-metadata',
- ),
+ meta_path(PartCategory),
# PartCategory detail endpoint
path('', CategoryDetail.as_view(), name='api-part-category-detail'),
]),
@@ -1542,11 +1534,7 @@ part_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=PartTestTemplate),
- name='api-part-test-template-metadata',
- ),
+ meta_path(PartTestTemplate),
path(
'',
PartTestTemplateDetail.as_view(),
@@ -1592,11 +1580,7 @@ part_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=PartRelated),
- name='api-part-related-metadata',
- ),
+ meta_path(PartRelated),
path(
'', PartRelatedDetail.as_view(), name='api-part-related-detail'
),
@@ -1647,9 +1631,7 @@ part_api_urls = [
'bom-validate/', PartValidateBOM.as_view(), name='api-part-bom-validate'
),
# Part metadata
- path(
- 'metadata/', MetadataView.as_view(model=Part), name='api-part-metadata'
- ),
+ meta_path(Part),
# Part pricing
path('pricing/', PartPricingDetail.as_view(), name='api-part-pricing'),
# Part detail endpoint
@@ -1667,11 +1649,7 @@ bom_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=BomItemSubstitute),
- name='api-bom-substitute-metadata',
- ),
+ meta_path(BomItemSubstitute),
path(
'',
BomItemSubstituteDetail.as_view(),
@@ -1688,11 +1666,7 @@ bom_api_urls = [
'/',
include([
path('validate/', BomItemValidate.as_view(), name='api-bom-item-validate'),
- path(
- 'metadata/',
- MetadataView.as_view(model=BomItem),
- name='api-bom-item-metadata',
- ),
+ meta_path(BomItem),
path('', BomDetail.as_view(), name='api-bom-item-detail'),
]),
),
diff --git a/src/backend/InvenTree/part/filters.py b/src/backend/InvenTree/part/filters.py
index ad4107566e..92887e57c8 100644
--- a/src/backend/InvenTree/part/filters.py
+++ b/src/backend/InvenTree/part/filters.py
@@ -297,7 +297,8 @@ def annotate_variant_quantity(subquery: Q, reference: str = 'quantity') -> Query
"""
return Coalesce(
Subquery(
- subquery.annotate(
+ subquery
+ .annotate(
total=Func(F(reference), function='SUM', output_field=FloatField())
)
.values('total')
@@ -324,7 +325,8 @@ def annotate_category_parts() -> QuerySet:
return Coalesce(
Subquery(
- subquery.annotate(
+ subquery
+ .annotate(
total=Func(F('pk'), function='COUNT', output_field=IntegerField())
)
.values('total')
@@ -369,7 +371,8 @@ def annotate_sub_categories() -> QuerySet:
return Coalesce(
Subquery(
- subquery.annotate(
+ subquery
+ .annotate(
total=Func(F('pk'), function='COUNT', output_field=IntegerField())
)
.values('total')
diff --git a/src/backend/InvenTree/part/models.py b/src/backend/InvenTree/part/models.py
index 6de1d544d0..74296eede6 100644
--- a/src/backend/InvenTree/part/models.py
+++ b/src/backend/InvenTree/part/models.py
@@ -225,7 +225,8 @@ class PartCategory(
def prefetch_parts_parameters(self, cascade=True):
"""Prefectch parts parameters."""
return (
- self.get_parts(cascade=cascade)
+ self
+ .get_parts(cascade=cascade)
.prefetch_related('parameters_list', 'parameters_list__template')
.all()
)
@@ -615,7 +616,8 @@ class Part(
if previous.image is not None and self.image != previous.image:
# Are there any (other) parts which reference the image?
n_refs = (
- Part.objects.filter(image=previous.image)
+ Part.objects
+ .filter(image=previous.image)
.exclude(pk=self.pk)
.count()
)
@@ -1040,7 +1042,8 @@ class Part(
self.revision_of
and self.revision
and (
- Part.objects.exclude(pk=self.pk)
+ Part.objects
+ .exclude(pk=self.pk)
.filter(revision_of=self.revision_of, revision=self.revision)
.exists()
)
@@ -1049,7 +1052,8 @@ class Part(
# Ensure unique across (Name, revision, IPN) (as specified)
if (self.revision or self.IPN) and (
- Part.objects.exclude(pk=self.pk)
+ Part.objects
+ .exclude(pk=self.pk)
.filter(name=self.name, revision=self.revision, IPN=self.IPN)
.exists()
):
@@ -1815,7 +1819,7 @@ class Part(
if include_external is False:
# Exclude stock entries which are not 'internal'
- query = query.filter(external=False)
+ query = query.filter(location__external=False)
if location:
locations = location.get_descendants(include_self=True)
@@ -3828,10 +3832,18 @@ class BomItem(InvenTree.models.MetadataMixin, InvenTree.models.InvenTreeModel):
return assemblies
def get_valid_parts_for_allocation(
- self, allow_variants=True, allow_substitutes=True
+ self,
+ allow_variants: bool = True,
+ allow_substitutes: bool = True,
+ allow_inactive: bool = True,
):
"""Return a list of valid parts which can be allocated against this BomItem.
+ Arguments:
+ allow_variants: If True, include variants of the sub_part
+ allow_substitutes: If True, include any directly specified substitute parts
+ allow_inactive: If True, include inactive parts in the returned list
+
Includes:
- The referenced sub_part
- Any directly specified substitute parts
@@ -3864,6 +3876,10 @@ class BomItem(InvenTree.models.MetadataMixin, InvenTree.models.InvenTreeModel):
if p.trackable != self.sub_part.trackable:
continue
+ # Filter by 'active' status
+ if not allow_inactive and not p.active:
+ continue
+
valid_parts.append(p)
return valid_parts
diff --git a/src/backend/InvenTree/part/test_api.py b/src/backend/InvenTree/part/test_api.py
index 224d0c6ab6..5db1e62f49 100644
--- a/src/backend/InvenTree/part/test_api.py
+++ b/src/backend/InvenTree/part/test_api.py
@@ -3175,65 +3175,6 @@ class PartInternalPriceBreakTest(InvenTreeAPITestCase):
p.refresh_from_db()
-class PartMetadataAPITest(InvenTreeAPITestCase):
- """Unit tests for the various metadata endpoints of API."""
-
- fixtures = [
- 'category',
- 'part',
- 'params',
- 'location',
- 'bom',
- 'company',
- 'test_templates',
- 'manufacturer_part',
- 'supplier_part',
- 'order',
- 'stock',
- ]
-
- roles = ['part.change', 'part_category.change']
-
- def metatester(self, apikey, model):
- """Generic tester."""
- modeldata = model.objects.first()
-
- # Useless test unless a model object is found
- self.assertIsNotNone(modeldata)
-
- url = reverse(apikey, kwargs={'pk': modeldata.pk})
-
- # Metadata is initially null
- self.assertIsNone(modeldata.metadata)
-
- numstr = randint(100, 900)
-
- self.patch(
- url,
- {'metadata': {f'abc-{numstr}': f'xyz-{apikey}-{numstr}'}},
- expected_code=200,
- )
-
- # Refresh
- modeldata.refresh_from_db()
- self.assertEqual(
- modeldata.get_metadata(f'abc-{numstr}'), f'xyz-{apikey}-{numstr}'
- )
-
- def test_metadata(self):
- """Test all endpoints."""
- for apikey, model in {
- 'api-part-category-parameter-metadata': PartCategoryParameterTemplate,
- 'api-part-category-metadata': PartCategory,
- 'api-part-test-template-metadata': PartTestTemplate,
- 'api-part-related-metadata': PartRelated,
- 'api-part-metadata': Part,
- 'api-bom-substitute-metadata': BomItemSubstitute,
- 'api-bom-item-metadata': BomItem,
- }.items():
- self.metatester(apikey, model)
-
-
class PartTestTemplateTest(PartAPITestBase):
"""API unit tests for the PartTestTemplate model."""
diff --git a/src/backend/InvenTree/plugin/api.py b/src/backend/InvenTree/plugin/api.py
index 8585a37275..91580062b3 100644
--- a/src/backend/InvenTree/plugin/api.py
+++ b/src/backend/InvenTree/plugin/api.py
@@ -17,7 +17,7 @@ from rest_framework.views import APIView
import InvenTree.permissions
import plugin.serializers as PluginSerializers
-from InvenTree.api import MetadataView
+from InvenTree.api import meta_path
from InvenTree.filters import SEARCH_ORDER_FILTER
from InvenTree.helpers import str2bool
from InvenTree.mixins import (
@@ -509,11 +509,11 @@ class RegistryStatusView(APIView):
return Response(result)
-class PluginMetadataView(MetadataView):
- """Metadata API endpoint for the PluginConfig model."""
+# class PluginMetadataView(MetadataView):
+# """Metadata API endpoint for the PluginConfig model."""
- lookup_field = 'key'
- lookup_url_kwarg = 'plugin'
+# lookup_field = 'key'
+# lookup_url_kwarg = 'plugin'
plugin_api_urls = [
@@ -576,12 +576,8 @@ plugin_api_urls = [
),
]),
),
- path(
- 'metadata/',
- PluginMetadataView.as_view(
- model=PluginConfig, lookup_field='key'
- ),
- name='api-plugin-metadata',
+ meta_path(
+ PluginConfig, lookup_field='key', lookup_field_ref='plugin'
),
path(
'activate/',
diff --git a/src/backend/InvenTree/plugin/base/barcodes/api.py b/src/backend/InvenTree/plugin/base/barcodes/api.py
index 06640bc453..c67a9bed2b 100644
--- a/src/backend/InvenTree/plugin/base/barcodes/api.py
+++ b/src/backend/InvenTree/plugin/base/barcodes/api.py
@@ -93,7 +93,8 @@ class BarcodeView(CreateAPIView):
if num_scans > max_scans:
n = num_scans - max_scans
old_scan_ids = list(
- BarcodeScanResult.objects.all()
+ BarcodeScanResult.objects
+ .all()
.order_by('timestamp')
.values_list('pk', flat=True)[:n]
)
diff --git a/src/backend/InvenTree/plugin/base/barcodes/mixins.py b/src/backend/InvenTree/plugin/base/barcodes/mixins.py
index 2b38ef4972..99c4661f57 100644
--- a/src/backend/InvenTree/plugin/base/barcodes/mixins.py
+++ b/src/backend/InvenTree/plugin/base/barcodes/mixins.py
@@ -191,7 +191,8 @@ class SupplierBarcodeMixin(BarcodeMixin):
q1 = Q(manufacturer=supplier)
# Case 2: Supplied by this supplier
m = (
- SupplierPart.objects.filter(supplier=supplier)
+ SupplierPart.objects
+ .filter(supplier=supplier)
.values_list('manufacturer_part', flat=True)
.distinct()
)
diff --git a/src/backend/InvenTree/plugin/base/integration/DataExport.py b/src/backend/InvenTree/plugin/base/integration/DataExport.py
index dc46aa449c..97d38ec493 100644
--- a/src/backend/InvenTree/plugin/base/integration/DataExport.py
+++ b/src/backend/InvenTree/plugin/base/integration/DataExport.py
@@ -90,6 +90,7 @@ class DataExportMixin:
headers: OrderedDict,
context: dict,
output: DataOutput,
+ serializer_context: Optional[dict] = None,
**kwargs,
) -> list:
"""Export data from the queryset.
@@ -100,6 +101,7 @@ class DataExportMixin:
Arguments:
queryset: The queryset to export
serializer_class: The serializer class to use for exporting the data
+ serializer_context: Optional context for the serializer
headers: The headers for the export
context: Any custom context for the export (provided by the plugin serializer)
output: The DataOutput object for the export
@@ -107,7 +109,9 @@ class DataExportMixin:
Returns: The exported data (a list of dict objects)
"""
# The default implementation simply serializes the queryset
- return serializer_class(queryset, many=True, exporting=True).data
+ return serializer_class(
+ queryset, many=True, exporting=True, context=serializer_context or {}
+ ).data
def get_export_options_serializer(self, **kwargs) -> serializers.Serializer | None:
"""Return a serializer class with dynamic export options for this plugin.
diff --git a/src/backend/InvenTree/plugin/builtin/integration/core_notifications.py b/src/backend/InvenTree/plugin/builtin/integration/core_notifications.py
index 3634c2b3e0..a35df5739d 100644
--- a/src/backend/InvenTree/plugin/builtin/integration/core_notifications.py
+++ b/src/backend/InvenTree/plugin/builtin/integration/core_notifications.py
@@ -128,7 +128,7 @@ class InvenTreeSlackNotifications(NotificationMixin, SettingsMixin, InvenTreePlu
SETTINGS = {
'NOTIFICATION_SLACK_URL': {
- 'name': _('Slack incoming webhook url'),
+ 'name': _('Slack incoming webhook URL'),
'description': _('URL that is used to send messages to a slack channel'),
'protected': True,
}
diff --git a/src/backend/InvenTree/plugin/builtin/labels/inventree_machine.py b/src/backend/InvenTree/plugin/builtin/labels/inventree_machine.py
index 2fece00a05..42657d617c 100644
--- a/src/backend/InvenTree/plugin/builtin/labels/inventree_machine.py
+++ b/src/backend/InvenTree/plugin/builtin/labels/inventree_machine.py
@@ -143,9 +143,11 @@ class InvenTreeLabelPlugin(LabelPrintingMixin, InvenTreePlugin):
last_used_printers = get_last_used_printers(user)[::-1]
machines = sorted(
machines,
- key=lambda m: last_used_printers.index(str(m.pk))
- if str(m.pk) in last_used_printers
- else -1,
+ key=lambda m: (
+ last_used_printers.index(str(m.pk))
+ if str(m.pk) in last_used_printers
+ else -1
+ ),
reverse=True,
)
diff --git a/src/backend/InvenTree/plugin/migrations/0001_initial.py b/src/backend/InvenTree/plugin/migrations/0001_initial.py
index 1dd7032f69..bdaa89afc1 100644
--- a/src/backend/InvenTree/plugin/migrations/0001_initial.py
+++ b/src/backend/InvenTree/plugin/migrations/0001_initial.py
@@ -16,7 +16,7 @@ class Migration(migrations.Migration):
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('key', models.CharField(help_text='Key of plugin', max_length=255, unique=True, verbose_name='Key')),
- ('name', models.CharField(blank=True, help_text='PluginName of the plugin', max_length=255, null=True, verbose_name='Name')),
+ ('name', models.CharField(blank=True, help_text='Name of the plugin', max_length=255, null=True, verbose_name='Name')),
('active', models.BooleanField(default=False, help_text='Is the plugin active', verbose_name='Active')),
],
),
diff --git a/src/backend/InvenTree/plugin/models.py b/src/backend/InvenTree/plugin/models.py
index 06923f5ba7..bed2d80c8b 100644
--- a/src/backend/InvenTree/plugin/models.py
+++ b/src/backend/InvenTree/plugin/models.py
@@ -24,7 +24,7 @@ class PluginConfig(InvenTree.models.MetadataMixin, models.Model):
Attributes:
key: slug of the plugin (this must be unique across all installed plugins!)
- name: PluginName of the plugin - serves for a manual double check if the right plugin is used
+ name: Name of the plugin - serves for a manual double check if the right plugin is used
active: Should the plugin be loaded?
"""
@@ -52,7 +52,7 @@ class PluginConfig(InvenTree.models.MetadataMixin, models.Model):
blank=True,
max_length=255,
verbose_name=_('Name'),
- help_text=_('PluginName of the plugin'),
+ help_text=_('Name of the plugin'),
)
package_name = models.CharField(
diff --git a/src/backend/InvenTree/plugin/serializers.py b/src/backend/InvenTree/plugin/serializers.py
index 88fc9f7746..5fbff385b4 100644
--- a/src/backend/InvenTree/plugin/serializers.py
+++ b/src/backend/InvenTree/plugin/serializers.py
@@ -149,7 +149,7 @@ class PluginConfigInstallSerializer(serializers.Serializer):
if not data.get('confirm'):
raise ValidationError({'confirm': _('Installation not confirmed')})
if (not data.get('url')) and (not data.get('packagename')):
- msg = _('Either packagename of URL must be provided')
+ msg = _('Either packagename or URL must be provided')
raise ValidationError({'url': msg, 'packagename': msg})
return data
diff --git a/src/backend/InvenTree/plugin/test_api.py b/src/backend/InvenTree/plugin/test_api.py
index 424067b8e4..ca6c312670 100644
--- a/src/backend/InvenTree/plugin/test_api.py
+++ b/src/backend/InvenTree/plugin/test_api.py
@@ -17,7 +17,7 @@ class PluginDetailAPITest(PluginMixin, InvenTreeAPITestCase):
def setUp(self):
"""Setup for all tests."""
- self.MSG_NO_PKG = 'Either packagename of URL must be provided'
+ self.MSG_NO_PKG = 'Either packagename or URL must be provided'
self.PKG_NAME = 'inventree-brother-plugin'
self.PKG_URL = 'git+https://github.com/inventree/inventree-brother-plugin'
@@ -470,8 +470,7 @@ class PluginDetailAPITest(PluginMixin, InvenTreeAPITestCase):
cfg = PluginConfig.objects.filter(key='sample').first()
self.assertIsNotNone(cfg)
- url = reverse('api-plugin-metadata', kwargs={'plugin': cfg.key})
- self.get(url, expected_code=200)
+ self.get(f'/api/plugins/{cfg.key}/metadata/', expected_code=200, follow=True)
def test_settings(self):
"""Test settings endpoint for plugin."""
diff --git a/src/backend/InvenTree/report/api.py b/src/backend/InvenTree/report/api.py
index d54ea59d96..a02bfe74ae 100644
--- a/src/backend/InvenTree/report/api.py
+++ b/src/backend/InvenTree/report/api.py
@@ -18,7 +18,7 @@ import report.models
import report.serializers
from common.models import DataOutput
from common.serializers import DataOutputSerializer
-from InvenTree.api import MetadataView
+from InvenTree.api import meta_path
from InvenTree.filters import InvenTreeSearchFilter
from InvenTree.mixins import ListCreateAPI, RetrieveUpdateDestroyAPI
from plugin import PluginMixinEnum
@@ -356,11 +356,7 @@ label_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=report.models.LabelTemplate),
- name='api-label-template-metadata',
- ),
+ meta_path(report.models.LabelTemplate),
path(
'',
LabelTemplateDetail.as_view(),
@@ -383,11 +379,7 @@ report_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=report.models.ReportTemplate),
- name='api-report-template-metadata',
- ),
+ meta_path(report.models.ReportTemplate),
path(
'',
ReportTemplateDetail.as_view(),
diff --git a/src/backend/InvenTree/report/templatetags/report.py b/src/backend/InvenTree/report/templatetags/report.py
index 6329b5a9dc..5027915206 100644
--- a/src/backend/InvenTree/report/templatetags/report.py
+++ b/src/backend/InvenTree/report/templatetags/report.py
@@ -350,7 +350,8 @@ def parameter(
raise TypeError("parameter tag requires a Model with 'parameters' attribute")
return (
- instance.parameters.prefetch_related('template')
+ instance.parameters
+ .prefetch_related('template')
.filter(template__name=parameter_name)
.first()
)
diff --git a/src/backend/InvenTree/stock/api.py b/src/backend/InvenTree/stock/api.py
index 0aa3c65ed9..84f21b55d1 100644
--- a/src/backend/InvenTree/stock/api.py
+++ b/src/backend/InvenTree/stock/api.py
@@ -33,7 +33,7 @@ from InvenTree.api import (
BulkCreateMixin,
BulkUpdateMixin,
ListCreateDestroyAPIView,
- MetadataView,
+ meta_path,
)
from InvenTree.fields import InvenTreeOutputOption, OutputConfiguration
from InvenTree.filters import (
@@ -1610,11 +1610,7 @@ stock_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=StockLocation),
- name='api-location-metadata',
- ),
+ meta_path(StockLocation),
path('', StockLocationDetail.as_view(), name='api-location-detail'),
]),
),
@@ -1628,11 +1624,7 @@ stock_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=StockLocationType),
- name='api-location-type-metadata',
- ),
+ meta_path(StockLocationType),
path(
'',
StockLocationTypeDetail.as_view(),
@@ -1659,11 +1651,7 @@ stock_api_urls = [
path(
'/',
include([
- path(
- 'metadata/',
- MetadataView.as_view(model=StockItemTestResult),
- name='api-stock-test-result-metadata',
- ),
+ meta_path(StockItemTestResult),
path(
'',
StockItemTestResultDetail.as_view(),
@@ -1701,11 +1689,7 @@ stock_api_urls = [
include([
path('convert/', StockItemConvert.as_view(), name='api-stock-item-convert'),
path('install/', StockItemInstall.as_view(), name='api-stock-item-install'),
- path(
- 'metadata/',
- MetadataView.as_view(model=StockItem),
- name='api-stock-item-metadata',
- ),
+ meta_path(StockItem),
path(
'serialize/',
StockItemSerialize.as_view(),
diff --git a/src/backend/InvenTree/stock/filters.py b/src/backend/InvenTree/stock/filters.py
index 0baf125875..e10479b580 100644
--- a/src/backend/InvenTree/stock/filters.py
+++ b/src/backend/InvenTree/stock/filters.py
@@ -28,7 +28,8 @@ def annotate_location_items(filter: Optional[Q] = None):
return Coalesce(
Subquery(
- subquery.annotate(
+ subquery
+ .annotate(
total=Func(F('pk'), function='COUNT', output_field=IntegerField())
)
.values('total')
@@ -50,7 +51,8 @@ def annotate_sub_locations():
return Coalesce(
Subquery(
- subquery.annotate(
+ subquery
+ .annotate(
count=Func(F('pk'), function='COUNT', output_field=IntegerField())
)
.values('count')
diff --git a/src/backend/InvenTree/stock/models.py b/src/backend/InvenTree/stock/models.py
index 07fef64c5c..d525bfb6dc 100644
--- a/src/backend/InvenTree/stock/models.py
+++ b/src/backend/InvenTree/stock/models.py
@@ -120,6 +120,7 @@ class StockLocationReportContext(report.mixins.BaseReportContext):
class StockLocation(
InvenTree.models.PluginValidationMixin,
+ InvenTree.models.InvenTreeParameterMixin,
InvenTree.models.InvenTreeBarcodeMixin,
report.mixins.InvenTreeReportMixin,
InvenTree.models.PathStringMixin,
diff --git a/src/backend/InvenTree/stock/serializers.py b/src/backend/InvenTree/stock/serializers.py
index f8d76e543a..35054ffe40 100644
--- a/src/backend/InvenTree/stock/serializers.py
+++ b/src/backend/InvenTree/stock/serializers.py
@@ -489,14 +489,13 @@ class StockItemSerializer(
),
'parent',
'part__category',
- 'part__pricing_data',
'supplier_part',
'supplier_part__manufacturer_part',
'customer',
'belongs_to',
'sales_order',
'consumed_by',
- ).select_related('part')
+ ).select_related('part', 'part__pricing_data')
# Annotate the queryset with the total allocated to sales orders
queryset = queryset.annotate(
@@ -1159,8 +1158,10 @@ class LocationSerializer(
'structural',
'external',
'location_type',
+ # Optional fields
'location_type_detail',
'tags',
+ 'parameters',
]
read_only_fields = ['barcode_hash', 'icon', 'level', 'pathstring']
@@ -1205,6 +1206,8 @@ class LocationSerializer(
filter_name='path_detail',
)
+ parameters = common.filters.enable_parameters_filter()
+
# explicitly set this field, so it gets included for AutoSchema
icon = serializers.CharField(read_only=True)
diff --git a/src/backend/InvenTree/stock/test_api.py b/src/backend/InvenTree/stock/test_api.py
index 7b267facb2..5785fc3d56 100644
--- a/src/backend/InvenTree/stock/test_api.py
+++ b/src/backend/InvenTree/stock/test_api.py
@@ -867,9 +867,13 @@ class StockItemListTest(StockAPITestCase):
excluded_headers = ['metadata']
- filters = {}
+ filters = {
+ 'part_detail': True,
+ 'location_detail': True,
+ 'supplier_part_detail': True,
+ }
- with self.export_data(self.list_url, filters) as data_file:
+ with self.export_data(self.list_url, params=filters) as data_file:
self.process_csv(
data_file,
required_cols=required_headers,
@@ -881,7 +885,7 @@ class StockItemListTest(StockAPITestCase):
filters['location'] = 1
filters['cascade'] = True
- with self.export_data(self.list_url, filters) as data_file:
+ with self.export_data(self.list_url, params=filters) as data_file:
data = self.process_csv(data_file, required_rows=9)
for row in data:
@@ -909,6 +913,51 @@ class StockItemListTest(StockAPITestCase):
with self.export_data(self.list_url, {'part': 25}) as data_file:
self.process_csv(data_file, required_rows=items.count())
+ def test_large_export(self):
+ """Test export of very large dataset.
+
+ - Ensure that the time taken to export a large dataset is reasonable.
+ - Ensure that the number of DB queries is reasonable.
+ """
+ # Create a large number of stock items
+ locations = list(StockLocation.objects.all())
+ parts = list(Part.objects.filter(virtual=False))
+
+ idx = 0
+
+ N_LOCATIONS = len(locations)
+ N_PARTS = len(parts)
+
+ stock_items = []
+
+ while idx < 2500:
+ part = parts[idx % N_PARTS]
+ location = locations[idx % N_LOCATIONS]
+
+ item = StockItem(
+ part=part,
+ location=location,
+ quantity=10,
+ level=0,
+ tree_id=0,
+ lft=0,
+ rght=0,
+ )
+ stock_items.append(item)
+ idx += 1
+
+ StockItem.objects.bulk_create(stock_items)
+
+ self.assertGreaterEqual(StockItem.objects.count(), 2500)
+
+ # Note: While the export is quick on pgsql, it is still quite slow on sqlite3
+ with self.export_data(
+ self.list_url, max_query_count=50, max_query_time=7.5
+ ) as data_file:
+ data = self.process_csv(data_file)
+
+ self.assertGreaterEqual(len(data), 2500)
+
def test_filter_by_allocated(self):
"""Test that we can filter by "allocated" status.
@@ -2516,40 +2565,39 @@ class StockMetadataAPITest(InvenTreeAPITestCase):
roles = ['stock.change', 'stock_location.change']
- def metatester(self, apikey, model):
+ def metatester(self, raw_url: str, model):
"""Generic tester."""
modeldata = model.objects.first()
# Useless test unless a model object is found
self.assertIsNotNone(modeldata)
- url = reverse(apikey, kwargs={'pk': modeldata.pk})
+ url = raw_url.format(pk=modeldata.pk)
# Metadata is initially null
self.assertIsNone(modeldata.metadata)
- numstr = f'12{len(apikey)}'
+ numstr = f'12{len(raw_url)}'
+ target_key = f'abc-{numstr}'
+ target_value = f'xyz-{raw_url}-{numstr}'
- self.patch(
- url,
- {'metadata': {f'abc-{numstr}': f'xyz-{apikey}-{numstr}'}},
- expected_code=200,
- )
+ # Create / update metadata entry (first try via old addresses)
+ data = {'metadata': {target_key: target_value}}
+ rsp = self.patch(url, data, expected_code=301)
+ self.patch(rsp.url, data, expected_code=200)
- # Refresh
+ # Refresh and check that metadata has been updated
modeldata.refresh_from_db()
- self.assertEqual(
- modeldata.get_metadata(f'abc-{numstr}'), f'xyz-{apikey}-{numstr}'
- )
+ self.assertEqual(modeldata.get_metadata(target_key), target_value)
def test_metadata(self):
"""Test all endpoints."""
- for apikey, model in {
- 'api-location-metadata': StockLocation,
- 'api-stock-test-result-metadata': StockItemTestResult,
- 'api-stock-item-metadata': StockItem,
+ for raw_url, model in {
+ '/api/stock/location/{pk}/metadata/': StockLocation,
+ '/api/stock/test/{pk}/metadata/': StockItemTestResult,
+ '/api/stock/{pk}/metadata/': StockItem,
}.items():
- self.metatester(apikey, model)
+ self.metatester(raw_url, model)
class StockApiPerformanceTest(StockAPITestCase, InvenTreeAPIPerformanceTestCase):
diff --git a/src/backend/InvenTree/stock/tests.py b/src/backend/InvenTree/stock/tests.py
index 514e8f0ec3..b3a86d31e3 100644
--- a/src/backend/InvenTree/stock/tests.py
+++ b/src/backend/InvenTree/stock/tests.py
@@ -867,6 +867,16 @@ class VariantTest(StockTestBase):
self.assertEqual(green.stock_entries(include_variants=False).count(), 0)
self.assertEqual(green.stock_entries().count(), 3)
+ # Test with an "external" location
+ entry = green.stock_entries().first()
+ entry.location = StockLocation.objects.create(
+ name='External Location', description='An external location', external=True
+ )
+ entry.save()
+
+ self.assertEqual(green.stock_entries(include_external=True).count(), 3)
+ self.assertEqual(green.stock_entries(include_external=False).count(), 2)
+
def test_serial_numbers(self):
"""Test serial number functionality for variant / template parts."""
InvenTreeSetting.set_setting('SERIAL_NUMBER_GLOBALLY_UNIQUE', False, self.user)
diff --git a/src/backend/InvenTree/users/permissions.py b/src/backend/InvenTree/users/permissions.py
index 67b735ae4b..7c93f5ec97 100644
--- a/src/backend/InvenTree/users/permissions.py
+++ b/src/backend/InvenTree/users/permissions.py
@@ -130,7 +130,11 @@ def check_user_role(
def check_user_permission(
- user: User, model: models.Model, permission: str, allow_inactive: bool = False
+ user: User,
+ model: models.Model,
+ permission: str,
+ allow_inactive: bool = False,
+ groups: Optional[QuerySet] = None,
) -> bool:
"""Check if the user has a particular permission against a given model type.
@@ -139,6 +143,7 @@ def check_user_permission(
model: The model class to check (e.g. 'part')
permission: The permission to check (e.g. 'view' / 'delete')
allow_inactive: If False, disallow inactive users from having permissions
+ groups: Optional cached queryset of groups to check (defaults to user's groups)
Returns:
bool: True if the user has the specified permission
@@ -160,9 +165,11 @@ def check_user_permission(
if table_name in get_ruleset_ignore():
return True
+ groups = groups or prefetch_rule_sets(user)
+
for role, table_names in get_ruleset_models().items():
if table_name in table_names:
- if check_user_role(user, role, permission):
+ if check_user_role(user, role, permission, groups=groups):
return True
# Check for children models which inherits from parent role
@@ -172,7 +179,7 @@ def check_user_permission(
if parent_child_string == table_name:
# Check if parent role has change permission
- if check_user_role(user, parent, 'change'):
+ if check_user_role(user, parent, 'change', groups=groups):
return True
# Generate the permission name based on the model and permission
diff --git a/src/backend/requirements-dev.txt b/src/backend/requirements-dev.txt
index 8da3fd5aa2..23ed43c57d 100644
--- a/src/backend/requirements-dev.txt
+++ b/src/backend/requirements-dev.txt
@@ -1,12 +1,12 @@
# This file was autogenerated by uv via the following command:
# uv pip compile src/backend/requirements-dev.in -o src/backend/requirements-dev.txt
-asgiref==3.10.0
+asgiref==3.11.0
# via
# -c src/backend/requirements.txt
# django
build==1.3.0
# via pip-tools
-certifi==2025.10.5
+certifi==2026.1.4
# via
# -c src/backend/requirements.txt
# requests
@@ -24,7 +24,7 @@ charset-normalizer==3.4.4
# requests
click==8.3.1
# via pip-tools
-coverage[toml]==7.13.0
+coverage[toml]==7.13.1
# via -r src/backend/requirements-dev.in
cryptography==46.0.3
# via
@@ -32,7 +32,7 @@ cryptography==46.0.3
# pdfminer-six
distlib==0.4.0
# via virtualenv
-django==5.2.9
+django==5.2.10
# via
# -c src/backend/requirements.txt
# django-silk
@@ -53,7 +53,7 @@ django-test-migrations==1.5.0
# via -r src/backend/requirements-dev.in
django-types==0.22.0
# via -r src/backend/requirements-dev.in
-filelock==3.20.1
+filelock==3.20.3
# via virtualenv
gprof2dot==2025.4.14
# via django-silk
@@ -71,26 +71,26 @@ markdown-it-py==4.0.0
# via rich
mdurl==0.1.2
# via markdown-it-py
-nodeenv==1.9.1
+nodeenv==1.10.0
# via pre-commit
packaging==25.0
# via
# -c src/backend/requirements.txt
# build
# pytest
-pdfminer-six==20251107
+pdfminer-six==20260107
# via -r src/backend/requirements-dev.in
pip==25.3
# via pip-tools
pip-tools==7.5.2
# via -r src/backend/requirements-dev.in
-platformdirs==4.5.0
+platformdirs==4.5.1
# via
# -c src/backend/requirements.txt
# virtualenv
pluggy==1.6.0
# via pytest
-pre-commit==4.5.0
+pre-commit==4.5.1
# via -r src/backend/requirements-dev.in
pycparser==2.23
# via
@@ -129,12 +129,12 @@ setuptools==80.9.0
# -c src/backend/requirements.txt
# -r src/backend/requirements-dev.in
# pip-tools
-sqlparse==0.5.3
+sqlparse==0.5.5
# via
# -c src/backend/requirements.txt
# django
# django-silk
-tomli==2.3.0
+tomli==2.4.0
# via coverage
ty==0.0.1a21
# via -r src/backend/requirements-dev.in
@@ -148,11 +148,11 @@ typing-extensions==4.15.0
# django-stubs
# django-stubs-ext
# django-test-migrations
-urllib3==2.6.0
+urllib3==2.6.3
# via
# -c src/backend/requirements.txt
# requests
-virtualenv==20.35.4
+virtualenv==20.36.1
# via pre-commit
wheel==0.45.1
# via pip-tools
diff --git a/src/backend/requirements.txt b/src/backend/requirements.txt
index 207bf674ac..cd4831a799 100644
--- a/src/backend/requirements.txt
+++ b/src/backend/requirements.txt
@@ -1,6 +1,6 @@
# This file was autogenerated by uv via the following command:
# uv pip compile src/backend/requirements.in -o src/backend/requirements.txt
-asgiref==3.10.0
+asgiref==3.11.0
# via
# django
# django-allauth
@@ -20,17 +20,17 @@ bleach[css]==6.3.0
# via django-markdownify
blessed==1.25.0
# via -r src/backend/requirements.in
-boto3==1.40.69
+boto3==1.42.24
# via
# django-anymail
# django-storages
-botocore==1.40.69
+botocore==1.42.24
# via
# boto3
# s3transfer
brotli==1.2.0
# via fonttools
-certifi==2025.10.5
+certifi==2026.1.4
# via
# requests
# sentry-sdk
@@ -54,7 +54,7 @@ cssselect2==0.8.0
# via weasyprint
defusedxml==0.7.1
# via python3-openid
-django==5.2.9
+django==5.2.10
# via
# -r src/backend/requirements.in
# django-allauth
@@ -87,13 +87,13 @@ django==5.2.9
# drf-spectacular
django-allauth[headless, mfa, openid, saml, socialaccount]==65.13.1
# via -r src/backend/requirements.in
-django-anymail[amazon-ses, postal]==13.1
+django-anymail[amazon-ses, postal]==14.0
# via -r src/backend/requirements.in
django-cleanup==9.0.0
# via -r src/backend/requirements.in
django-cors-headers==4.9.0
# via -r src/backend/requirements.in
-django-dbbackup==5.0.1
+django-dbbackup==5.1.0
# via -r src/backend/requirements.in
django-error-report-2==0.4.2
# via -r src/backend/requirements.in
@@ -121,13 +121,13 @@ django-oauth-toolkit==3.1.0
# via -r src/backend/requirements.in
django-otp==1.3.0
# via -r src/backend/requirements.in
-django-picklefield==3.3
+django-picklefield==3.4.0
# via django-q2
django-q-sentry==0.1.6
# via -r src/backend/requirements.in
django-q2==1.9.0
# via -r src/backend/requirements.in
-django-recurrence==1.11.1
+django-recurrence==1.14
# via django-ical
django-redis==6.0.0
# via -r src/backend/requirements.in
@@ -154,11 +154,11 @@ djangorestframework==3.16.1
# drf-spectacular
djangorestframework-simplejwt[crypto]==5.5.1
# via -r src/backend/requirements.in
-docutils==0.22.3
+docutils==0.22.4
# via -r src/backend/requirements.in
drf-spectacular==0.29.0
# via -r src/backend/requirements.in
-dulwich==0.24.10
+dulwich==0.25.0
# via -r src/backend/requirements.in
et-xmlfile==2.0.0
# via openpyxl
@@ -170,7 +170,7 @@ flexcache==0.3
# via pint
flexparser==0.4
# via pint
-fonttools[woff]==4.61.0
+fonttools[woff]==4.61.1
# via weasyprint
googleapis-common-protos==1.72.0
# via
@@ -185,8 +185,10 @@ gunicorn==23.0.0
icalendar==6.3.2
# via django-ical
idna==3.11
- # via requests
-importlib-metadata==8.7.0
+ # via
+ # django-anymail
+ # requests
+importlib-metadata==8.7.1
# via opentelemetry-api
inflection==0.5.1
# via drf-spectacular
@@ -200,7 +202,7 @@ jmespath==1.0.1
# via
# boto3
# botocore
-jsonschema==4.25.1
+jsonschema==4.26.0
# via drf-spectacular
jsonschema-specifications==2025.9.1
# via jsonschema
@@ -220,7 +222,7 @@ oauthlib==3.3.1
# django-oauth-toolkit
openpyxl==3.1.5
# via tablib
-opentelemetry-api==1.38.0
+opentelemetry-api==1.39.1
# via
# -r src/backend/requirements.in
# opentelemetry-exporter-otlp-proto-grpc
@@ -237,17 +239,17 @@ opentelemetry-api==1.38.0
# opentelemetry-instrumentation-wsgi
# opentelemetry-sdk
# opentelemetry-semantic-conventions
-opentelemetry-exporter-otlp==1.38.0
+opentelemetry-exporter-otlp==1.39.1
# via -r src/backend/requirements.in
-opentelemetry-exporter-otlp-proto-common==1.38.0
+opentelemetry-exporter-otlp-proto-common==1.39.1
# via
# opentelemetry-exporter-otlp-proto-grpc
# opentelemetry-exporter-otlp-proto-http
-opentelemetry-exporter-otlp-proto-grpc==1.38.0
+opentelemetry-exporter-otlp-proto-grpc==1.39.1
# via opentelemetry-exporter-otlp
-opentelemetry-exporter-otlp-proto-http==1.38.0
+opentelemetry-exporter-otlp-proto-http==1.39.1
# via opentelemetry-exporter-otlp
-opentelemetry-instrumentation==0.59b0
+opentelemetry-instrumentation==0.60b1
# via
# opentelemetry-instrumentation-dbapi
# opentelemetry-instrumentation-django
@@ -258,40 +260,40 @@ opentelemetry-instrumentation==0.59b0
# opentelemetry-instrumentation-sqlite3
# opentelemetry-instrumentation-system-metrics
# opentelemetry-instrumentation-wsgi
-opentelemetry-instrumentation-dbapi==0.59b0
+opentelemetry-instrumentation-dbapi==0.60b1
# via
# opentelemetry-instrumentation-psycopg
# opentelemetry-instrumentation-pymysql
# opentelemetry-instrumentation-sqlite3
-opentelemetry-instrumentation-django==0.59b0
+opentelemetry-instrumentation-django==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-psycopg==0.59b0
+opentelemetry-instrumentation-psycopg==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-pymysql==0.59b0
+opentelemetry-instrumentation-pymysql==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-redis==0.59b0
+opentelemetry-instrumentation-redis==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-requests==0.59b0
+opentelemetry-instrumentation-requests==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-sqlite3==0.59b0
+opentelemetry-instrumentation-sqlite3==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-system-metrics==0.59b0
+opentelemetry-instrumentation-system-metrics==0.60b1
# via -r src/backend/requirements.in
-opentelemetry-instrumentation-wsgi==0.59b0
+opentelemetry-instrumentation-wsgi==0.60b1
# via
# -r src/backend/requirements.in
# opentelemetry-instrumentation-django
-opentelemetry-proto==1.38.0
+opentelemetry-proto==1.39.1
# via
# opentelemetry-exporter-otlp-proto-common
# opentelemetry-exporter-otlp-proto-grpc
# opentelemetry-exporter-otlp-proto-http
-opentelemetry-sdk==1.38.0
+opentelemetry-sdk==1.39.1
# via
# -r src/backend/requirements.in
# opentelemetry-exporter-otlp-proto-grpc
# opentelemetry-exporter-otlp-proto-http
-opentelemetry-semantic-conventions==0.59b0
+opentelemetry-semantic-conventions==0.60b1
# via
# opentelemetry-instrumentation
# opentelemetry-instrumentation-dbapi
@@ -300,7 +302,7 @@ opentelemetry-semantic-conventions==0.59b0
# opentelemetry-instrumentation-requests
# opentelemetry-instrumentation-wsgi
# opentelemetry-sdk
-opentelemetry-util-http==0.59b0
+opentelemetry-util-http==0.60b1
# via
# opentelemetry-instrumentation-django
# opentelemetry-instrumentation-requests
@@ -313,7 +315,7 @@ paramiko==4.0.0
# via django-storages
pdf2image==1.17.0
# via -r src/backend/requirements.in
-pillow==12.0.0
+pillow==12.1.0
# via
# -r src/backend/requirements.in
# django-stdimage
@@ -325,31 +327,31 @@ pint==0.25.2
# via -r src/backend/requirements.in
pip-licenses==5.5.0
# via -r src/backend/requirements.in
-platformdirs==4.5.0
+platformdirs==4.5.1
# via pint
ppf-datamatrix==0.2
# via -r src/backend/requirements.in
-prettytable==3.16.0
+prettytable==3.17.0
# via pip-licenses
-protobuf==6.33.0
+protobuf==6.33.2
# via
# googleapis-common-protos
# opentelemetry-proto
-psutil==7.1.3
+psutil==7.2.1
# via opentelemetry-instrumentation-system-metrics
py-moneyed==3.0
# via django-money
pycparser==2.23
# via cffi
-pydyf==0.11.0
+pydyf==0.12.1
# via weasyprint
pyjwt[crypto]==2.10.1
# via
# django-allauth
# djangorestframework-simplejwt
-pynacl==1.6.0
+pynacl==1.6.2
# via paramiko
-pypdf==6.4.1
+pypdf==6.6.0
# via -r src/backend/requirements.in
pyphen==0.17.2
# via weasyprint
@@ -381,7 +383,7 @@ qrcode[pil]==8.2
# django-allauth
rapidfuzz==3.14.3
# via -r src/backend/requirements.in
-redis==7.0.1
+redis==7.1.0
# via django-redis
referencing==0.37.0
# via
@@ -393,13 +395,13 @@ requests==2.32.5
# django-anymail
# django-oauth-toolkit
# opentelemetry-exporter-otlp-proto-http
-rpds-py==0.28.0
+rpds-py==0.30.0
# via
# jsonschema
# referencing
-s3transfer==0.14.0
+s3transfer==0.16.0
# via boto3
-sentry-sdk==2.47.0
+sentry-sdk==2.48.0
# via
# -r src/backend/requirements.in
# django-q-sentry
@@ -411,7 +413,7 @@ sgmllib3k==1.0.0
# via feedparser
six==1.17.0
# via python-dateutil
-sqlparse==0.5.3
+sqlparse==0.5.5
# via
# django
# django-sql-utils
@@ -441,11 +443,11 @@ typing-extensions==4.15.0
# pint
# py-moneyed
# referencing
-tzdata==2025.2
+tzdata==2025.3
# via icalendar
uritemplate==4.2.0
# via drf-spectacular
-urllib3==2.6.0
+urllib3==2.6.3
# via
# botocore
# django-anymail
diff --git a/src/frontend/lib/enums/ApiEndpoints.tsx b/src/frontend/lib/enums/ApiEndpoints.tsx
index c46d50af71..5c61f4e6ec 100644
--- a/src/frontend/lib/enums/ApiEndpoints.tsx
+++ b/src/frontend/lib/enums/ApiEndpoints.tsx
@@ -20,6 +20,7 @@ export enum ApiEndpoints {
user_simple_login = 'email/generate/',
// User auth endpoints
+ auth_base = '/auth/',
user_reset = 'auth/v1/auth/password/request',
user_reset_set = 'auth/v1/auth/password/reset',
auth_pwd_change = 'auth/v1/account/password/change',
diff --git a/src/frontend/lib/types/Auth.tsx b/src/frontend/lib/types/Auth.tsx
index 959b64e5fe..50990f7ddc 100644
--- a/src/frontend/lib/types/Auth.tsx
+++ b/src/frontend/lib/types/Auth.tsx
@@ -25,7 +25,8 @@ export enum FlowEnum {
MfaAuthenticate = 'mfa_authenticate',
Reauthenticate = 'reauthenticate',
MfaReauthenticate = 'mfa_reauthenticate',
- MfaTrust = 'mfa_trust'
+ MfaTrust = 'mfa_trust',
+ MfaRegister = 'mfa_register'
}
export interface Flow {
diff --git a/src/frontend/lib/types/Settings.tsx b/src/frontend/lib/types/Settings.tsx
index 08b89a9f5f..46e1b10abe 100644
--- a/src/frontend/lib/types/Settings.tsx
+++ b/src/frontend/lib/types/Settings.tsx
@@ -34,6 +34,8 @@ export interface Setting {
method?: string;
required?: boolean;
read_only?: boolean;
+ confirm?: boolean;
+ confirm_text?: string;
}
export interface SettingChoice {
diff --git a/src/frontend/src/components/Boundary.tsx b/src/frontend/src/components/Boundary.tsx
index 119b8fc9eb..b96ec01108 100644
--- a/src/frontend/src/components/Boundary.tsx
+++ b/src/frontend/src/components/Boundary.tsx
@@ -4,7 +4,9 @@ import { ErrorBoundary, type FallbackRender } from '@sentry/react';
import { IconExclamationCircle } from '@tabler/icons-react';
import { type ReactNode, useCallback } from 'react';
-function DefaultFallback({ title }: Readonly<{ title: string }>): ReactNode {
+export function DefaultFallback({
+ title
+}: Readonly<{ title: string }>): ReactNode {
return (
{
console.error(`ERR: Error rendering component: ${label}`);
+ console.error(error);
},
[]
);
diff --git a/src/frontend/src/components/details/Details.tsx b/src/frontend/src/components/details/Details.tsx
index b04ce1d492..655af719c6 100644
--- a/src/frontend/src/components/details/Details.tsx
+++ b/src/frontend/src/components/details/Details.tsx
@@ -109,7 +109,7 @@ function HoverNameBadge(data: any, type: BadgeType) {
return [
`${data.label}: ${data.name}`,
data.name,
- getDetailUrl(data.owner_model, data.pk, true),
+ getDetailUrl(data.owner_model, data.owner_id, true),
undefined,
undefined
];
diff --git a/src/frontend/src/components/importer/ImporterColumnSelector.tsx b/src/frontend/src/components/importer/ImporterColumnSelector.tsx
index 4036b4f3b5..8031495cac 100644
--- a/src/frontend/src/components/importer/ImporterColumnSelector.tsx
+++ b/src/frontend/src/components/importer/ImporterColumnSelector.tsx
@@ -84,16 +84,28 @@ function ImporterDefaultField({
}) {
const api = useApi();
- const [rawValue, setRawValue] = useState('');
+ const [rawValue, setRawValue] = useState(undefined);
+
+ // Initialize raw value with provided default
+ useEffect(() => {
+ setRawValue(session.fieldDefaults[fieldName]);
+ }, [fieldName, session.fieldDefaults]);
const fieldType: string = useMemo(() => {
return session.availableFields[fieldName]?.type;
}, [fieldName, session.availableFields]);
- const [value] = useDebouncedValue(rawValue, fieldType == 'string' ? 500 : 10);
-
const onChange = useCallback(
(value: any) => {
+ if (value === undefined) {
+ value = session.fieldDefaults[fieldName];
+ }
+
+ // No change - do nothing
+ if (value === session.fieldDefaults[fieldName]) {
+ return;
+ }
+
// Update the default value for the field
const defaults = {
...session.fieldDefaults,
@@ -114,6 +126,21 @@ function ImporterDefaultField({
[fieldName, session, session.fieldDefaults]
);
+ const getDebounceTime = (type: string) => {
+ switch (type) {
+ case 'string':
+ return 500;
+ case 'number':
+ case 'float':
+ case 'integer':
+ return 200;
+ default:
+ return 50;
+ }
+ };
+
+ const [value] = useDebouncedValue(rawValue, getDebounceTime(fieldType));
+
// Update the default value after the debounced value changes
useEffect(() => {
onChange(value);
diff --git a/src/frontend/src/components/importer/ImporterDrawer.tsx b/src/frontend/src/components/importer/ImporterDrawer.tsx
index 2ed836627c..eb5a4343af 100644
--- a/src/frontend/src/components/importer/ImporterDrawer.tsx
+++ b/src/frontend/src/components/importer/ImporterDrawer.tsx
@@ -42,7 +42,7 @@ function ImportDrawerStepper({
>
-
+
@@ -133,7 +133,7 @@ export default function ImporterDrawer({
);
- }, [session.sessionData]);
+ }, [currentStep, session.sessionData]);
return (
,
+ hidden: hidden ?? false,
content:
model_type && model_id ? (
void;
- onToggle: (setting: Setting, value: boolean) => void;
+ onEdit: (setting: Setting, confirmed: boolean) => void;
+ onToggle: (setting: Setting, value: boolean, confirmed: boolean) => void;
}>) {
// Determine the text to display for the setting value
const valueText: string = useMemo(() => {
@@ -54,7 +74,9 @@ function SettingValue({
// Launch the edit dialog for this setting
const editSetting = useCallback(() => {
if (!setting.read_only) {
- onEdit(setting);
+ const confirm = confirmSettingChange(setting);
+ if (!confirm.proceed) return;
+ onEdit(setting, confirm.confirmed);
}
}, [setting, onEdit]);
@@ -62,7 +84,9 @@ function SettingValue({
const toggleSetting = useCallback(
(event: any) => {
if (!setting.read_only) {
- onToggle(setting, event.currentTarget.checked);
+ const confirm = confirmSettingChange(setting);
+ if (!confirm.proceed) return;
+ onToggle(setting, event.currentTarget.checked, confirm.confirmed);
}
},
[setting, onToggle]
@@ -170,8 +194,8 @@ export function SettingItem({
}: Readonly<{
setting: Setting;
shaded: boolean;
- onEdit: (setting: Setting) => void;
- onToggle: (setting: Setting, value: boolean) => void;
+ onEdit: (setting: Setting, confirmed: boolean) => void;
+ onToggle: (setting: Setting, value: boolean, confirmed: boolean) => void;
}>) {
const { colorScheme } = useMantineColorScheme();
@@ -192,7 +216,18 @@ export function SettingItem({
{setting.description}
-
+
+ {setting.confirm && (
+
+
+
+ )}
+
+
diff --git a/src/frontend/src/components/settings/SettingList.tsx b/src/frontend/src/components/settings/SettingList.tsx
index ca1e76627f..db5a3492bb 100644
--- a/src/frontend/src/components/settings/SettingList.tsx
+++ b/src/frontend/src/components/settings/SettingList.tsx
@@ -91,7 +91,7 @@ export function SettingList({
// Callback for editing a single setting instance
const onValueEdit = useCallback(
- (setting: Setting) => {
+ (setting: Setting, confirmed: boolean) => {
setSetting(setting);
editSettingModal.open();
},
@@ -100,13 +100,17 @@ export function SettingList({
// Callback for toggling a single boolean setting instance
const onValueToggle = useCallback(
- (setting: Setting, value: boolean) => {
+ (setting: Setting, value: boolean, confirmed: boolean) => {
+ let data: any = {
+ value: value
+ };
+ if (confirmed) {
+ data = { ...data, manual_confirm: true };
+ }
api
.patch(
apiUrl(settingsState.endpoint, setting.key, settingsState.pathParams),
- {
- value: value
- }
+ data
)
.then(() => {
notifications.hide('setting');
diff --git a/src/frontend/src/forms/BuildForms.tsx b/src/frontend/src/forms/BuildForms.tsx
index 22706a8b50..46b7c0ab1d 100644
--- a/src/frontend/src/forms/BuildForms.tsx
+++ b/src/frontend/src/forms/BuildForms.tsx
@@ -228,10 +228,12 @@ export function useBuildOrderOutputFields({
function BuildOutputFormRow({
props,
- record
+ record,
+ withQuantityColumn = true
}: Readonly<{
props: TableFieldRowProps;
record: any;
+ withQuantityColumn?: boolean;
}>) {
const stockItemColumn = useMemo(() => {
if (record.serial) {
@@ -271,11 +273,13 @@ function BuildOutputFormRow({
{stockItemColumn}
-
-
- {quantityColumn}
-
-
+ {withQuantityColumn && (
+
+
+ {quantityColumn}
+
+
+ )}
{record.batch}
{
const record = outputs.find((output) => output.pk == row.item.output);
return (
-
+
);
},
headers: [
diff --git a/src/frontend/src/forms/PartForms.tsx b/src/frontend/src/forms/PartForms.tsx
index bdb3e25b74..e561614e8c 100644
--- a/src/frontend/src/forms/PartForms.tsx
+++ b/src/frontend/src/forms/PartForms.tsx
@@ -1,4 +1,3 @@
-import { ApiEndpoints, ModelType, apiUrl } from '@lib/index';
import type { ApiFormFieldSet } from '@lib/types/Forms';
import { t } from '@lingui/core/macro';
import { IconBuildingStore, IconCopy, IconPackages } from '@tabler/icons-react';
@@ -10,8 +9,10 @@ import { useGlobalSettingsState } from '../states/SettingsStates';
*/
export function usePartFields({
create = false,
+ partId,
duplicatePartInstance
}: {
+ partId?: number;
duplicatePartInstance?: any;
create?: boolean;
}): ApiFormFieldSet {
@@ -55,10 +56,11 @@ export function usePartFields({
}
},
default_supplier: {
- model: ModelType.company,
- api_url: apiUrl(ApiEndpoints.company_list),
+ hidden: !partId || !purchaseable,
filters: {
- is_supplier: true
+ part: partId,
+ part_detail: true,
+ supplier_detail: true
}
},
default_expiry: {},
@@ -199,6 +201,7 @@ export function usePartFields({
return fields;
}, [
+ partId,
virtual,
purchaseable,
create,
diff --git a/src/frontend/src/forms/StockForms.tsx b/src/frontend/src/forms/StockForms.tsx
index 70476d591e..a7689e30e7 100644
--- a/src/frontend/src/forms/StockForms.tsx
+++ b/src/frontend/src/forms/StockForms.tsx
@@ -1038,6 +1038,30 @@ function stockMergeFields(items: any[]): ApiFormFieldSet {
const records = Object.fromEntries(items.map((item) => [item.pk, item]));
+ // Extract all non-null location values from the items
+ const locationValues = [
+ ...new Set(
+ items.filter((item) => item.location).map((item) => item.location)
+ )
+ ];
+
+ // Extract all non-null default location values from the items
+ const defaultLocationValues = [
+ ...new Set(
+ items
+ .filter((item) => item.part_detail?.default_location)
+ .map((item) => item.part_detail?.default_location)
+ )
+ ];
+
+ // Select a default location value
+ const defaultLocation =
+ locationValues.length === 1
+ ? locationValues[0]
+ : defaultLocationValues.length === 1
+ ? defaultLocationValues[0]
+ : undefined;
+
const fields: ApiFormFieldSet = {
items: {
field_type: 'table',
@@ -1067,7 +1091,7 @@ function stockMergeFields(items: any[]): ApiFormFieldSet {
]
},
location: {
- default: items[0]?.part_detail?.default_location,
+ default: defaultLocation,
filters: {
structural: false
}
diff --git a/src/frontend/src/functions/auth.tsx b/src/frontend/src/functions/auth.tsx
index f1c9335d50..ae3c481e57 100644
--- a/src/frontend/src/functions/auth.tsx
+++ b/src/frontend/src/functions/auth.tsx
@@ -90,7 +90,7 @@ export async function doBasicLogin(
const host: string = getHost();
- // Attempt login with
+ // Attempt login with basic info
await api
.post(
apiUrl(ApiEndpoints.auth_login),
@@ -119,12 +119,13 @@ export async function doBasicLogin(
await handlePossibleMFAError(err);
break;
case 409:
+ doLogout(navigate);
notifications.show({
- title: t`Already logged in`,
- message: t`There is a conflicting session on the server for this browser. Please logout of that first.`,
+ title: t`Logged Out`,
+ message: t`There was a conflicting session for this browser, which has been logged out.`,
color: 'red',
id: 'auth-login-error',
- autoClose: false
+ autoClose: true
});
break;
default:
@@ -146,10 +147,16 @@ export async function doBasicLogin(
}
});
+ // see if mfa registration is required
+ if (loginDone) {
+ // stop further processing if mfa setup is required
+ if (!(await MfaSetupOk(navigate))) loginDone = false;
+ }
+
+ // we are successfully logged in - gather required states for app
if (loginDone) {
await fetchUserState();
- // see if mfa registration is required
- await fetchGlobalStates(navigate);
+ await fetchGlobalStates();
observeProfile();
} else if (!success) {
clearUserState();
@@ -237,6 +244,26 @@ export const doSimpleLogin = async (email: string) => {
return mail;
};
+function MfaSetupOk(navigate: NavigateFunction) {
+ return api
+ .get(apiUrl(ApiEndpoints.auth_base))
+ .then(() => {
+ return true;
+ })
+ .catch((err) => {
+ if (err?.response?.status == 401) {
+ const mfa_register = err.response.data.id == FlowEnum.MfaRegister;
+ if (mfa_register && navigate != undefined) {
+ navigate('/mfa-setup');
+ return false;
+ }
+ } else {
+ console.error(err);
+ }
+ return true;
+ });
+}
+
function observeProfile() {
// overwrite language and theme info in session with profile info
@@ -325,19 +352,14 @@ export async function handleMfaLogin(
) {
const { setAuthContext } = useServerApiState.getState();
- const result = await authApi(
- apiUrl(ApiEndpoints.auth_login_2fa),
- undefined,
- 'post',
- {
- code: values.code
- }
- )
+ return await authApi(apiUrl(ApiEndpoints.auth_login_2fa), undefined, 'post', {
+ code: values.code
+ })
.then((response) => {
handleSuccessFullAuth(response, navigate, location, setError);
return true;
})
- .catch((err) => {
+ .catch(async (err) => {
// Already logged in, but with a different session
if (err?.response?.status == 409) {
notifications.show({
@@ -353,11 +375,12 @@ export async function handleMfaLogin(
);
if (mfa_trust?.is_pending) {
setAuthContext(err.response.data.data);
- authApi(apiUrl(ApiEndpoints.auth_trust), undefined, 'post', {
+ await authApi(apiUrl(ApiEndpoints.auth_trust), undefined, 'post', {
trust: values.remember ?? false
}).then((response) => {
handleSuccessFullAuth(response, navigate, location, setError);
});
+ return true;
}
} else {
const errors = err.response?.data?.errors;
@@ -370,7 +393,6 @@ export async function handleMfaLogin(
}
return false;
});
- return result;
}
/**
@@ -381,7 +403,7 @@ export async function handleMfaLogin(
* - An existing CSRF cookie is stored in the browser
*/
export const checkLoginState = async (
- navigate: any,
+ navigate: NavigateFunction,
redirect?: any,
no_redirect?: boolean
) => {
@@ -395,22 +417,25 @@ export const checkLoginState = async (
const { isLoggedIn, fetchUserState } = useUserState.getState();
// Callback function when login is successful
- const loginSuccess = () => {
+ const loginSuccess = async () => {
setLoginChecked(true);
showLoginNotification({
title: t`Logged In`,
message: t`Successfully logged in`
});
+ MfaSetupOk(navigate).then(async (isOk) => {
+ if (isOk) {
+ observeProfile();
+ await fetchGlobalStates();
- observeProfile();
-
- fetchGlobalStates(navigate);
- followRedirect(navigate, redirect);
+ followRedirect(navigate, redirect);
+ }
+ });
};
if (isLoggedIn()) {
// Already logged in
- loginSuccess();
+ await loginSuccess();
return;
}
@@ -419,7 +444,7 @@ export const checkLoginState = async (
await fetchUserState();
if (isLoggedIn()) {
- loginSuccess();
+ await loginSuccess();
} else if (!no_redirect) {
setLoginChecked(true);
navigate('/login', { state: redirect });
@@ -428,8 +453,8 @@ export const checkLoginState = async (
};
function handleSuccessFullAuth(
- response?: any,
- navigate?: NavigateFunction,
+ response: any,
+ navigate: NavigateFunction,
location?: Location,
setError?: (message: string | undefined) => void
) {
@@ -446,12 +471,16 @@ function handleSuccessFullAuth(
}
setAuthenticated();
- fetchUserState().finally(() => {
- observeProfile();
- fetchGlobalStates(navigate);
+ // see if mfa registration is required
+ MfaSetupOk(navigate).then(async (isOk) => {
+ if (isOk) {
+ await fetchUserState();
+ observeProfile();
+ await fetchGlobalStates();
- if (navigate && location) {
- followRedirect(navigate, location?.state);
+ if (location !== undefined) {
+ followRedirect(navigate, location?.state);
+ }
}
});
}
@@ -544,7 +573,12 @@ export function handleVerifyTotp(
authApi(apiUrl(ApiEndpoints.auth_totp), undefined, 'post', {
code: value
}).then(() => {
- followRedirect(navigate, location?.state);
+ showNotification({
+ title: t`MFA Setup successful`,
+ message: t`MFA via TOTP has been set up successfully; you will need to login again.`,
+ color: 'green'
+ });
+ doLogout(navigate);
});
};
}
@@ -688,8 +722,8 @@ export function handleChangePassword(
}
export async function handleWebauthnLogin(
- navigate?: NavigateFunction,
- location?: Location
+ navigate: NavigateFunction,
+ location: Location
) {
const { setAuthContext } = useServerApiState.getState();
diff --git a/src/frontend/src/functions/tables.tsx b/src/frontend/src/functions/tables.tsx
index 0abe409b2b..04142f2c5a 100644
--- a/src/frontend/src/functions/tables.tsx
+++ b/src/frontend/src/functions/tables.tsx
@@ -24,3 +24,15 @@ export function shortenString({
return `${str.slice(0, N)} ... ${str.slice(-N)}`;
}
+
+/**
+ * Generate a short hash from a long string
+ */
+export function hashString(str: string): string {
+ let hash = 0;
+ for (let i = 0; i < str.length; i++) {
+ hash = (hash << 5) - hash + str.charCodeAt(i);
+ hash |= 0; // Convert to 32bit integer
+ }
+ return hash.toString(36);
+}
diff --git a/src/frontend/src/hooks/UseImportSession.tsx b/src/frontend/src/hooks/UseImportSession.tsx
index 5410e77ee7..4e97c05944 100644
--- a/src/frontend/src/hooks/UseImportSession.tsx
+++ b/src/frontend/src/hooks/UseImportSession.tsx
@@ -42,6 +42,7 @@ export function useImportSession({
} = useInstance({
endpoint: ApiEndpoints.import_session_list,
pk: sessionId,
+ hasPrimaryKey: true,
defaultValue: {}
});
diff --git a/src/frontend/src/hooks/UseInstance.tsx b/src/frontend/src/hooks/UseInstance.tsx
index 9caf729aea..75158a9d5a 100644
--- a/src/frontend/src/hooks/UseInstance.tsx
+++ b/src/frontend/src/hooks/UseInstance.tsx
@@ -85,7 +85,7 @@ export function useInstance({
pk == null ||
pk == undefined ||
pk.toString().length == 0 ||
- pk == '-1'
+ pk.toString() == '-1'
) {
setInstance(defaultValue);
return defaultValue;
diff --git a/src/frontend/src/locales/ar/messages.po b/src/frontend/src/locales/ar/messages.po
index 4af1aee875..3482e384f5 100644
--- a/src/frontend/src/locales/ar/messages.po
+++ b/src/frontend/src/locales/ar/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: ar\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Arabic\n"
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "مسح"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "اختر موقع المصدر لتخصيص المخزون"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "اختر موقع المصدر لتخصيص المخزون"
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "تم تخصيص عناصر المخزون"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "تم تخصيص عناصر المخزون"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/bg/messages.po b/src/frontend/src/locales/bg/messages.po
index 43660f9cce..7dea682bd5 100644
--- a/src/frontend/src/locales/bg/messages.po
+++ b/src/frontend/src/locales/bg/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: bg\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Bulgarian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/cs/messages.po b/src/frontend/src/locales/cs/messages.po
index 940e5f2888..40ac7af4d0 100644
--- a/src/frontend/src/locales/cs/messages.po
+++ b/src/frontend/src/locales/cs/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: cs\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Czech\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
@@ -46,9 +46,9 @@ msgstr "Odstranit"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Zrušit"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Akce"
@@ -73,7 +73,7 @@ msgstr "Akce"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Hledat"
@@ -97,12 +97,12 @@ msgstr "Ne"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Ne"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Díl"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Díly"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr "Parametr"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parametry"
@@ -218,14 +219,14 @@ msgstr "Kategorie dílu"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Kategorie dílů"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Skladová položka"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Skladové položky"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Umístění skladu"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Skladová umístění"
@@ -267,7 +268,7 @@ msgstr "Typy skladových umístění"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Historie skladu"
@@ -340,11 +341,11 @@ msgstr "Objednávka"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Objednávky"
@@ -373,10 +374,10 @@ msgstr "Prodejní objednávka"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Prodejní objednávky"
@@ -398,10 +399,10 @@ msgstr "Vrácená objednávka"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Vrácené objednávky"
@@ -546,23 +547,23 @@ msgstr "Výběrová pole"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Administrace"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Vytvořené objednávky"
@@ -597,11 +598,11 @@ msgstr "Vytvořené objednávky"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Chyba při vykreslování komponenty"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Došlo k chybě při vykreslování této komponenty. Více informací najdete v konzoli."
@@ -637,7 +638,7 @@ msgstr "Čárový kód"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Skenovat"
@@ -798,12 +799,12 @@ msgstr "Tisk reportu"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Tisk štítku"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Tisk"
@@ -819,19 +820,19 @@ msgstr "Tisk"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Tisk reportu"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Tiskové akce"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Tisk štítků"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Tisk reportu"
@@ -860,8 +861,8 @@ msgstr "Budete přesměrováni na poskytovatele pro další akce."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Otevřít skener čárového kódu"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Přijmout rozložení"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Odstranit přidružený obrázek z této položky?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Vymazat"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Odeslat"
@@ -1579,21 +1580,21 @@ msgstr "Přihlášení proběhlo úspěšně"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Přihlášení se nezdařilo"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Zkontrolujte vstup a zkuste to znovu."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "E-mail byl doručen úspěšně"
@@ -1628,7 +1629,7 @@ msgstr "Vaše uživatelské jméno"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Heslo"
@@ -1732,7 +1733,7 @@ msgstr "Server"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Verze rozhraní API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "Ikony {0}"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Načítání"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Zpracovávání dat"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Vyskytla se chyba"
@@ -2002,31 +2004,31 @@ msgstr "Vyberte sloupec, nebo ponechte prázdné pro ignorování tohoto pole."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignorovat toto pole"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mapování datových sloupců do databázových polí"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Přijmout mapování sloupců"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Databázové pole"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Popis pole:"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Importovaný sloupec"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Výchozí hodnota"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Namapovat sloupce"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importovat Data"
+msgid "Import Rows"
+msgstr "Importovat řádky"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Data byla úspěšně importována"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Zavřít"
@@ -2208,7 +2214,7 @@ msgstr "Aktualizace skupinových rolí"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Role"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Zobrazení"
@@ -2255,10 +2261,10 @@ msgstr "Žádné položky"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Odkazy"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentace"
@@ -2547,7 +2553,7 @@ msgstr "Nastavení"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Uživatelská nastavení"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Nastavení systému"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centrum správce"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Odhlásit"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Odstranit skupinu vyhledávání"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Informace o pluginu"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Doprava"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Neaktivní"
@@ -3001,7 +3007,7 @@ msgstr "Není skladem"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "V objednávce"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategorie"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategorie"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Lokace"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Sériové číslo"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Sériové číslo"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Množství"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Dávka"
@@ -3193,11 +3198,19 @@ msgstr "Přidat vlastní stav"
msgid "Create a new custom state for your workflow"
msgstr "Vytvořit nový vlastní stav pro váš pracovní postup"
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr "Chcete pokračovat ve změně tohoto nastavení?"
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr "Toto nastavení vyžaduje potvrzení"
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Upravit nastavení"
@@ -3206,32 +3219,32 @@ msgstr "Upravit nastavení"
msgid "Setting {key} updated successfully"
msgstr "Nastavení {key} bylo úspěšně aktualizováno"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Nastavení aktualizováno"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Nastavení {0} bylo úspěšně aktualizováno"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Při úpravě nastavení došlo k chybě"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Chyba při načítání nastavení"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Žádné nastavení"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Nejsou k dispozici žádná konfigurovatelná nastavení"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Bez specifikovaného nastavení"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr "Další"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Upravit díl"
@@ -3770,13 +3783,13 @@ msgstr "Požadavky prodeje"
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Objednat položky"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Přejít na InvenTree nástěnku"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Navštivte dokumentaci pro více informací o InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "O InvenTree.org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informace o serveru"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "O této instanci Inventree"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informace o licenci"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licence pro závislosti služby"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Otevřít navigaci"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Otevřít hlavní navigační menu"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Naskenovat čárový kód nebo QR kód"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr "Přejít do uživatelského nastavení"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr "Přejít na objednávky"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr "Přejít na prodejní objednávky"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr "Přejít na vratky"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr "Přejít na výrobní příkazy"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr "Přejít do nastavení systému"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Přejít do Admin centra"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "Spravovat pluginy InvenTree"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Náhrada přidána"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Výstup sestavy"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr "Množství k dokončení"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr "Množství k dokončení"
msgid "Status"
msgstr "Stav"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Dokončit výstupy sestavy"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Výrobní příkaz byl dokončen"
@@ -4428,24 +4445,24 @@ msgstr "Výrobní příkaz byl dokončen"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr "Množství k vyřazení"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Vyřazení výstupů výrobních příkazů"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Vybrané výstupy výrobních příkazů budou vyhotoveny, ale označeny za vyřazené"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Přidělené skladové položky budou spotřebovány"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Výrobní příkaz byl vyřazen"
@@ -4453,24 +4470,24 @@ msgstr "Výrobní příkaz byl vyřazen"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Zrušit výrobní příkazy"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Vybrané výrobní příkazy budou odstraněny"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Přidělené skladové položky budou vráceny do skladu"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Výrobní příkaz byl zrušen"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Výrobní příkaz byl zrušen"
msgid "IPN"
msgstr "IČO"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Přiděleno"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Zdrojové umístění"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Vyberte umístění pro přiřazení zásob"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Vyberte umístění pro přiřazení zásob"
msgid "Allocate Stock"
msgstr "Přidělit zásoby"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Zásoba přidělena"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Zásoba přidělena"
msgid "Consume Stock"
msgstr "Spotřebovat zásoby"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr "Zásoby plánované ke spotřebě"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Plně spotřebovány"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr "Vyberte kód projektu pro tuto položku"
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr "Vyberte kód projektu pro tuto položku"
msgid "Subscribed"
msgstr "Odebírané"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Přihlásit se k odběru oznámení pro tuto položku"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Nadřazená kategorie"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Přihlásit se k odběru oznámení pro tuto kategorii"
@@ -4690,8 +4707,8 @@ msgstr "Uložit již s přijatými zásobami"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Vrátit"
msgid "Count"
msgstr "Počet"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Přidat zásobu"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Zásoba přidána"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Zvyšte množství vybraných skladových položek o danou částku."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Snížit zásobu"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Zásoba snížena"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Snižte množství vybraných skladových položek o danou částku."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Převést zásobu"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Skladová položka převedena"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Přesunout vybrané položky do určeného umístění."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Vrátit zásoby"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Zásoby vráceny"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Vrátit vybrané položky do skladu na určené místo."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Spočítat zásoby"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Spočítáno"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Spočítat vybrané skladové položky, a podle toho upravit množství."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Změnit stav skladu"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Stav skladu byl změněn"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Změnit stav vybraných skladových položek."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Sloučit zásoby"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Zásoby sloučeny"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Sloučit skladové položky"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "Sloučení nelze vrátit zpět"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Při slučování položek mohou být informace o sledování ztraceny"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "Informace o dodavateli mohou být při slučování položek ztraceny"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Přiřadit sklad zákazníkovi"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Zásoby přiřazené zákazníkovi"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Odstranit skladové položky"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Skladová položka odstraněna"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Tato operace trvale odstraní vybrané skladové položky."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Nadřazené skladové umístění"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Najít sériové číslo"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Žádné odpovídající položky"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Více odpovídajících položek"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Neplatná odpověď ze serveru"
@@ -5062,99 +5079,110 @@ msgstr "Interní chyba serveru"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Již přihlášeno!"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "Vyskytl se konflikt relací na serveru pro tento prohlížeč, prosím nejdřív se odhlašte."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Odhlášen(a)"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "Žádná odezva ze serveru."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr "Pro tento prohlížeč došlo ke konfliktní relaci, která byla odhlášena."
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Žádná odezva ze serveru."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "MFA přihlášení úspěšné"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "Údaje o MFA byly automaticky poskytnuty v prohlížeči"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Odhlášen(a)"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Úspěšně odhlášen/a"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Jazyk změněn"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Váš aktivní jazyk byl změněn podle nastavení Vašeho profilu"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Motiv změněn"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Váš aktivní jazyk byl změněn podle nastavení Vašeho profilu"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Zkontrolujte doručenou poštu pro odkaz pro obnovení. Funguje to pouze v případě, že máte účet. Zkontrolujte také ve spamu."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Obnovení selhalo"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Již přihlášeno!"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Vyskytl se konflikt relací na serveru pro tento prohlížeč, prosím nejdřív se odhlašte."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Přihlášen"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Úspěšně přihlášen/a"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Nepodařilo se nastavit MFA"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr "Nastavení MFA bylo úspěšné"
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr "MFA přes TOTP bylo úspěšně nastaveno; budete se muset znovu přihlásit."
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Nastavení hesla"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Heslo bylo úspěšně nastaveno. Nyní se můžete přihlásit s novým heslem"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Heslo nelze změnit"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "Dvě pole s hesly se neshodují"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Heslo bylo změněno"
@@ -5210,11 +5238,11 @@ msgstr "Vypršel časový limit žádosti."
msgid "Exporting Data"
msgstr "Exportování dat"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Export dat"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Export"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Odstranit vybrané skladové položky"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Akce skladu"
@@ -5383,12 +5411,12 @@ msgstr "Nemáte účet?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Vícefaktorové ověření"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP kód"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Pozice"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Typ"
@@ -5933,220 +5961,220 @@ msgstr "Upravit profil"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr "Znovuověření proběhlo úspěšně"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr "Byli jste úspěšně znovu ověřeni."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr "Chyba při znovu ověření"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr "Znovuověření selhalo"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr "Nepodařilo se zrovuověřit"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr "Znovu ověřit"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr "Pro pokračování je vyžadováno znovu ověření."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Zadejte své heslo"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr "Vložte jeden z vašich TOTP kódů"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr "WebAuthn údaje odstraněny"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr "WebAuthn údaje úspěšně odstraněny."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr "Chyba při odstraňování WebAuthn údajů"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr "Odstranit WebAuthn údaje"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr "Potvrdit odstranění"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr "Potvrdit odstranění WebAuth údajů"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr "TOTP odstraněn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr "TOTP token byl úspěšně odstraněn."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr "Chyba při odstraňování TOTP tokenu"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr "Odstranit TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr "Potvrdit odstranění TOTP kódu"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr "TOTP již registrován"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr "Token TOTP je již pro tento účet zaregistrován."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr "Chyba při načítání registrace TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr "Neočekávaná chyba při načítání registračních dat TOTP."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr "TOTP registrován"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr "TOTP token úspěšně registrován."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Chyba při registraci tokenu TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "Registrovat TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr "Chyba při načítání obnovovacích kódů"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Kódy pro obnovení"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr "Následující jednorázové obnovovací kódy jsou k dispozici pro použití"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr "Zkopírovat obnovovací kódy do schránky"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr "Žádné nepoužité kódy"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr "Nejsou k dispozici žádné obnovovací kódy"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr "WebAuthn registrován"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr "WebAuthn údaje úspěšně registrovány"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr "Chyba při registrování WebAuthn údajů"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr "Registrace WebAuthn selhala"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr "Nepodařilo se registrovat údaje WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr "Chyba při načítání registrace WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Časové jednorázové heslo (TOTP)"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Jednorázové předgenerované obnovovací kódy"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr "Webové ověření (WebAuthn) je webový standard pro bezpečné ověření"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Naposledy použito"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Vytvořeno"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Nenakonfigurováno"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "Pro tento účet nejsou nakonfigurovány žádné vícefaktorové tokeny"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr "Registrovat metodu ověření"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr "Nejsou dostupné žádné MFA metody"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr "Nejsou k dispozici žádné metody MFA pro konfiguraci"
@@ -6162,47 +6190,47 @@ msgstr "Jednorázové heslo"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Zadejte TOTP kód pro zajištění správné registrace"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "E-mailové adresy"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E-mailové adresy"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Jednotné přihlášení"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Není povoleno"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "Jednotné přihlášení (SSO) není pro tento server povoleno "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Není povoleno"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Jednotné přihlášení (SSO) není pro tento server povoleno "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Přístupové tokeny"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Informace o relaci"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Informace o relaci"
msgid "Timestamp"
msgstr "Časová značka"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Metoda"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Chyba při aktualizaci e-mailu"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Momentálně nejsou registrovány žádné e-mailové adresy."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Následující e-mailové adresy jsou přiřazeny k vašemu účtu:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primární"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Ověřeno"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Neověřeno"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Nastavit jako výchozí"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Znovu zaslat ověření"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Přidat e-mailovou adresu"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-mailová adresa"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Chyba při přidávání e-mailu"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Přidat e-mailovou adresu"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-mailová adresa"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Chyba při přidávání e-mailu"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Přidat email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Chyba při přidávání e-mailu"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Přidat email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "K tomuto účtu nejsou připojeni žádní poskytovatelé."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "Můžete se přihlásit ke svému účtu pomocí některého z následujících poskytovatelů"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Odstranit odkaz poskytovatele"
@@ -6921,7 +6949,7 @@ msgstr "Vlastní status"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Podřízené objednávky sestavy"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Zobrazit externí výrobní příkazy"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Zobrazení tabulky"
@@ -7245,6 +7274,7 @@ msgstr "Zobrazení kalendáře"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr "Parametrické zobrazení"
@@ -7349,7 +7379,7 @@ msgstr "Externí odkaz"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Podrobnosti dílu"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Přidat položku"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Není skladem"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Základní uživatel"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Podkategorie"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Přesunout položky do nadřazené kategorie"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Odstranit položky"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Prodejní díl"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Vytvořil(a)"
msgid "Default Supplier"
msgstr "Výchozí dodavatel"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Výchozí expirace"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "dny"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Cenový rozsah"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Poslední sériové číslo"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Vybrat revizi části"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varianty"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Přiřazení"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Kusovník"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Použito v"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Cena dílu"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Testovací šablony"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Související díly"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Díl je uzamčen"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Parametr dílu nemůže být upraven, díl je uzamčen"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Parametr dílu nemůže být upraven, díl je uzamčen"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Požadováno"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr "Deficit"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Přidat díl"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Odstranit díl"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Odstranění této části nelze vrátit zpět"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Objednávka"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Objednat zásoby"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Vyhledat podle sériového čísla"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Akce s položkou"
@@ -8008,8 +8038,8 @@ msgstr "Maximální hodnota"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maximální hodnota"
msgid "Total Price"
msgstr "Celková cena"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Komponenta"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimální cena"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Maximální cena"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Maximální cena"
msgid "Unit Price"
msgstr "Jednotková cena"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Výsečový graf"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Sloupcový graf"
@@ -8543,94 +8573,94 @@ msgstr "Odznačit zkontrolování"
msgid "Mark shipment as unchecked"
msgstr "Označit zásilku jako nezkontrolovanou"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Nadřazené umístění"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sublokace"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Typ umístění"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Skladové místo nejvyšší úrovně"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Podrobnosti o umístění"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Výchozí součásti"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Upravit Skladovou pozici"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Přesunout položky na nadřazenou pozici"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Smazat skladovou pozici"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Akce položek"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Akce pro skladové položky na tomto místě"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Upravit Skladovou pozici"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Přesunout položky na nadřazenou pozici"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Smazat skladovou pozici"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Akce položek"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Akce pro skladové položky na tomto místě"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr "Akce umístění"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Akce pro potomky na tomto místě"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Skenovat skladovou položku"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Skenovat tuto položku do umístění"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Chyba při skenování skladové položky"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Skenovat skladové místo"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Skenovat umístění položky do umístění"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Chyba při skenování skladové položky"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Akce umístění"
@@ -8917,6 +8947,7 @@ msgstr "Zobrazit položky, které mají sériové číslo"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Sériové"
@@ -9139,12 +9170,12 @@ msgstr "Přidat filtr"
msgid "Clear Filters"
msgstr "Vymazat filtry"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Nebyl nalezen žádný záznam"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Chyba při načítání možností tabulky"
@@ -9156,7 +9187,7 @@ msgstr "Chyba při načítání možností tabulky"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Server vrátil nesprávný datový typ"
@@ -9176,7 +9207,7 @@ msgstr "Server vrátil nesprávný datový typ"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Chyba při načítání údajů tabulky"
@@ -9190,11 +9221,11 @@ msgstr "Chyba při načítání údajů tabulky"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Zobrazit podrobnosti"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr "Zobrazit {model}"
@@ -9788,7 +9819,7 @@ msgstr "Zobrazit objednávky s počátečním datem"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Přiřazení zásob výrobním objednávkám"
@@ -10049,7 +10080,7 @@ msgstr "Zobrazit položku"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Přidat řádek položky"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Upravit řádkovou položku"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Vyžadované zásoby"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Zobrazit výrobní příkaz"
@@ -11196,7 +11227,7 @@ msgstr "Zobrazit díly výrobce pro aktivní výrobce."
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Importovat položky řádku"
@@ -11222,11 +11253,11 @@ msgstr "Zobrazit řádkové položky, které byly přijaty"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Přijímat položku"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Přijímat položky"
diff --git a/src/frontend/src/locales/da/messages.po b/src/frontend/src/locales/da/messages.po
index a7f35ff844..68d4d8a2a4 100644
--- a/src/frontend/src/locales/da/messages.po
+++ b/src/frontend/src/locales/da/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: da\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Danish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -22,12 +22,12 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:289
#: src/pages/Index/Scan.tsx:64
msgid "Duplicate"
-msgstr ""
+msgstr "Dupliker"
#: lib/components/RowActions.tsx:46
#: src/components/items/ActionDropdown.tsx:245
msgid "Edit"
-msgstr ""
+msgstr "Rediger"
#: lib/components/RowActions.tsx:56
#: src/components/forms/ApiForm.tsx:754
@@ -37,7 +37,7 @@ msgstr ""
#: src/pages/Notifications.tsx:109
#: src/tables/plugin/PluginListTable.tsx:243
msgid "Delete"
-msgstr ""
+msgstr "Slet"
#: lib/components/RowActions.tsx:66
#: src/components/details/DetailsImage.tsx:83
@@ -46,13 +46,13 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
-msgstr ""
+msgstr "Annuller"
#: lib/components/RowActions.tsx:136
#: src/components/nav/NavigationDrawer.tsx:190
@@ -62,10 +62,10 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
-msgstr ""
+msgstr "Handlinger"
#: lib/components/SearchInput.tsx:34
#: src/components/forms/fields/RelatedModelField.tsx:479
@@ -73,36 +73,36 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
-msgstr ""
+msgstr "Søg"
#: lib/components/YesNoButton.tsx:20
msgid "Pass"
-msgstr ""
+msgstr "Ok"
#: lib/components/YesNoButton.tsx:21
msgid "Fail"
-msgstr ""
+msgstr "Fejlet"
#: lib/components/YesNoButton.tsx:43
#: src/tables/Filter.tsx:35
msgid "Yes"
-msgstr ""
+msgstr "Ja"
#: lib/components/YesNoButton.tsx:44
#: src/tables/Filter.tsx:36
msgid "No"
-msgstr ""
+msgstr "Nej"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,17 +113,18 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
msgid "Part"
-msgstr ""
+msgstr "Del"
#: lib/enums/ModelInformation.tsx:30
#: lib/enums/Roles.tsx:35
@@ -134,9 +135,9 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
-msgstr ""
+msgstr "Dele"
#: lib/enums/ModelInformation.tsx:37
#: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:13
@@ -149,34 +150,34 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Parameter"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
-msgstr ""
+msgstr "Parameter"
#: lib/enums/ModelInformation.tsx:45
#: src/tables/part/PartCategoryTemplateTable.tsx:87
msgid "Parameter Template"
-msgstr ""
+msgstr "Parameter Skabelon"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Parameter Skabeloner"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
-msgstr ""
+msgstr "Del Testskabelon"
#: lib/enums/ModelInformation.tsx:53
msgid "Part Test Templates"
-msgstr ""
+msgstr "Del Testskabeloner"
#: lib/enums/ModelInformation.tsx:59
#: src/components/wizards/OrderPartsWizard.tsx:290
@@ -188,12 +189,12 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:83
#: src/tables/stock/StockItemTable.tsx:247
msgid "Supplier Part"
-msgstr ""
+msgstr "Leverandør Del"
#: lib/enums/ModelInformation.tsx:60
#: src/pages/purchasing/PurchasingIndex.tsx:128
msgid "Supplier Parts"
-msgstr ""
+msgstr "Leverandør Dele"
#: lib/enums/ModelInformation.tsx:69
#: src/pages/company/ManufacturerPartDetail.tsx:288
@@ -201,103 +202,103 @@ msgstr ""
#: src/tables/part/PartPurchaseOrdersTable.tsx:56
#: src/tables/stock/StockItemTable.tsx:253
msgid "Manufacturer Part"
-msgstr ""
+msgstr "Producent Del"
#: lib/enums/ModelInformation.tsx:70
#: src/pages/purchasing/PurchasingIndex.tsx:177
msgid "Manufacturer Parts"
-msgstr ""
+msgstr "Producent Dele"
#: lib/enums/ModelInformation.tsx:79
#: src/pages/part/CategoryDetail.tsx:371
#: src/tables/Filter.tsx:389
msgid "Part Category"
-msgstr ""
+msgstr "Del Kategori"
#: lib/enums/ModelInformation.tsx:80
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
-msgstr ""
+msgstr "Del Kategorier"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
#: src/tables/stock/StockTrackingTable.tsx:48
#: src/tables/stock/StockTrackingTable.tsx:55
msgid "Stock Item"
-msgstr ""
+msgstr "Lagervarer"
#: lib/enums/ModelInformation.tsx:89
#: lib/enums/Roles.tsx:45
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
-msgstr ""
+msgstr "Lagervarer"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
-msgstr ""
+msgstr "Lagerlokation"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
-msgstr ""
+msgstr "Lagerlokationer"
#: lib/enums/ModelInformation.tsx:108
msgid "Stock Location Type"
-msgstr ""
+msgstr "Lager Lokationstype"
#: lib/enums/ModelInformation.tsx:109
msgid "Stock Location Types"
-msgstr ""
+msgstr "Lager Lokationstyper"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
-msgstr ""
+msgstr "Lager Historik"
#: lib/enums/ModelInformation.tsx:115
msgid "Stock Histories"
-msgstr ""
+msgstr "Lager Historik"
#: lib/enums/ModelInformation.tsx:120
msgid "Build"
-msgstr ""
+msgstr "Byg"
#: lib/enums/ModelInformation.tsx:121
msgid "Builds"
-msgstr ""
+msgstr "Bygger"
#: lib/enums/ModelInformation.tsx:130
msgid "Build Line"
-msgstr ""
+msgstr "Bygge linje"
#: lib/enums/ModelInformation.tsx:131
msgid "Build Lines"
-msgstr ""
+msgstr "Bygge linjer"
#: lib/enums/ModelInformation.tsx:138
msgid "Build Item"
-msgstr ""
+msgstr "Byg Emne"
#: lib/enums/ModelInformation.tsx:139
msgid "Build Items"
-msgstr ""
+msgstr "Byg Emner"
#: lib/enums/ModelInformation.tsx:144
#: src/pages/company/CompanyDetail.tsx:345
@@ -305,11 +306,11 @@ msgstr ""
#: src/tables/company/ContactTable.tsx:67
#: src/tables/company/ParametricCompanyTable.tsx:18
msgid "Company"
-msgstr ""
+msgstr "Firma"
#: lib/enums/ModelInformation.tsx:145
msgid "Companies"
-msgstr ""
+msgstr "Firmaer"
#: lib/enums/ModelInformation.tsx:152
#: src/pages/build/BuildDetail.tsx:317
@@ -320,12 +321,12 @@ msgstr ""
#: src/tables/Filter.tsx:286
#: src/tables/TableHoverCard.tsx:101
msgid "Project Code"
-msgstr ""
+msgstr "Projektkode"
#: lib/enums/ModelInformation.tsx:153
#: src/pages/Index/Settings/AdminCenter/Index.tsx:172
msgid "Project Codes"
-msgstr ""
+msgstr "Projektkoder"
#: lib/enums/ModelInformation.tsx:159
#: src/components/wizards/OrderPartsWizard.tsx:338
@@ -336,26 +337,26 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:239
#: src/tables/stock/StockTrackingTable.tsx:120
msgid "Purchase Order"
-msgstr ""
+msgstr "Købsordre"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
-msgstr ""
+msgstr "Købsordrer"
#: lib/enums/ModelInformation.tsx:169
msgid "Purchase Order Line"
-msgstr ""
+msgstr "Indkøbsordre linje"
#: lib/enums/ModelInformation.tsx:170
msgid "Purchase Order Lines"
-msgstr ""
+msgstr "Indkøbsordre linjer"
#: lib/enums/ModelInformation.tsx:175
#: src/pages/build/BuildDetail.tsx:290
@@ -369,60 +370,60 @@ msgstr ""
#: src/tables/sales/SalesOrderShipmentTable.tsx:143
#: src/tables/stock/StockTrackingTable.tsx:131
msgid "Sales Order"
-msgstr ""
+msgstr "Salgsordrer"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
-msgstr ""
+msgstr "Salgsordrer"
#: lib/enums/ModelInformation.tsx:185
#: src/pages/sales/SalesOrderShipmentDetail.tsx:445
msgid "Sales Order Shipment"
-msgstr ""
+msgstr "Salg Ordre Forsendelse"
#: lib/enums/ModelInformation.tsx:186
msgid "Sales Order Shipments"
-msgstr ""
+msgstr "Salg Ordre Forsendelser"
#: lib/enums/ModelInformation.tsx:194
#: src/pages/sales/ReturnOrderDetail.tsx:554
#: src/tables/stock/StockTrackingTable.tsx:142
msgid "Return Order"
-msgstr ""
+msgstr "Returordre"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
-msgstr ""
+msgstr "Returordre"
#: lib/enums/ModelInformation.tsx:204
msgid "Return Order Line Item"
-msgstr ""
+msgstr "Retur Ordre Linje Vare"
#: lib/enums/ModelInformation.tsx:205
msgid "Return Order Line Items"
-msgstr ""
+msgstr "Retur Ordre Linje Varer"
#: lib/enums/ModelInformation.tsx:210
#: src/tables/company/AddressTable.tsx:52
msgid "Address"
-msgstr ""
+msgstr "Adresse"
#: lib/enums/ModelInformation.tsx:211
#: src/pages/company/CompanyDetail.tsx:265
msgid "Addresses"
-msgstr ""
+msgstr "Adresser"
#: lib/enums/ModelInformation.tsx:217
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:89
@@ -431,22 +432,22 @@ msgstr ""
#: src/pages/sales/ReturnOrderDetail.tsx:208
#: src/pages/sales/SalesOrderDetail.tsx:201
msgid "Contact"
-msgstr ""
+msgstr "Kontakt"
#: lib/enums/ModelInformation.tsx:218
#: src/pages/company/CompanyDetail.tsx:259
#: src/pages/core/CoreIndex.tsx:33
msgid "Contacts"
-msgstr ""
+msgstr "Kontakter"
#: lib/enums/ModelInformation.tsx:224
#: src/tables/ColumnRenderers.tsx:444
msgid "Owner"
-msgstr ""
+msgstr "Ejer"
#: lib/enums/ModelInformation.tsx:225
msgid "Owners"
-msgstr ""
+msgstr "Ejer"
#: lib/enums/ModelInformation.tsx:231
#: src/pages/Auth/ChangePassword.tsx:36
@@ -461,7 +462,7 @@ msgstr ""
#: src/tables/stock/StockTrackingTable.tsx:190
#: src/tables/stock/StockTrackingTable.tsx:218
msgid "User"
-msgstr ""
+msgstr "Bruger"
#: lib/enums/ModelInformation.tsx:232
#: src/components/nav/NavigationDrawer.tsx:105
@@ -469,12 +470,12 @@ msgstr ""
#: src/pages/core/CoreIndex.tsx:21
#: src/pages/core/UserDetail.tsx:226
msgid "Users"
-msgstr ""
+msgstr "Brugerne"
#: lib/enums/ModelInformation.tsx:238
#: src/pages/core/GroupDetail.tsx:78
msgid "Group"
-msgstr ""
+msgstr "Gruppe"
#: lib/enums/ModelInformation.tsx:239
#: src/components/nav/NavigationDrawer.tsx:111
@@ -484,59 +485,59 @@ msgstr ""
#: src/pages/core/UserDetail.tsx:99
#: src/tables/settings/UserTable.tsx:276
msgid "Groups"
-msgstr ""
+msgstr "Grupper"
#: lib/enums/ModelInformation.tsx:246
msgid "Import Session"
-msgstr ""
+msgstr "Importer Session"
#: lib/enums/ModelInformation.tsx:247
msgid "Import Sessions"
-msgstr ""
+msgstr "Importer Sessioner"
#: lib/enums/ModelInformation.tsx:254
msgid "Label Template"
-msgstr ""
+msgstr "Etiket Skabelon"
#: lib/enums/ModelInformation.tsx:255
#: src/pages/Index/Settings/AdminCenter/Index.tsx:209
msgid "Label Templates"
-msgstr ""
+msgstr "Etiket Skabeloner"
#: lib/enums/ModelInformation.tsx:262
msgid "Report Template"
-msgstr ""
+msgstr "Rapport skabelon"
#: lib/enums/ModelInformation.tsx:263
#: src/pages/Index/Settings/AdminCenter/Index.tsx:215
msgid "Report Templates"
-msgstr ""
+msgstr "Rapporter Skabeloner"
#: lib/enums/ModelInformation.tsx:270
#: src/components/plugins/PluginDrawer.tsx:145
msgid "Plugin Configuration"
-msgstr ""
+msgstr "Plugin indstillinger"
#: lib/enums/ModelInformation.tsx:271
msgid "Plugin Configurations"
-msgstr ""
+msgstr "Plugin indstillinger"
#: lib/enums/ModelInformation.tsx:278
msgid "Content Type"
-msgstr ""
+msgstr "Indholdstype"
#: lib/enums/ModelInformation.tsx:279
msgid "Content Types"
-msgstr ""
+msgstr "Indholdstyper"
#: lib/enums/ModelInformation.tsx:284
msgid "Selection List"
-msgstr ""
+msgstr "Vælg liste"
#: lib/enums/ModelInformation.tsx:285
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:21
msgid "Selection Lists"
-msgstr ""
+msgstr "Valg Lister"
#: lib/enums/ModelInformation.tsx:291
#: src/components/barcodes/BarcodeInput.tsx:114
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -571,39 +572,39 @@ msgstr ""
#: src/tables/settings/EmailTable.tsx:109
#: src/tables/stock/StockItemTestResultTable.tsx:338
msgid "Error"
-msgstr ""
+msgstr "Fejl"
#: lib/enums/ModelInformation.tsx:292
#: src/tables/machine/MachineListTable.tsx:402
#: src/tables/machine/MachineTypeTable.tsx:297
msgid "Errors"
-msgstr ""
+msgstr "Fejl"
#: lib/enums/Roles.tsx:31
msgid "Admin"
-msgstr ""
+msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
-msgstr ""
+msgstr "Produktionsordrer"
#: lib/enums/Roles.tsx:50
#: src/pages/Index/Settings/AdminCenter/Index.tsx:202
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
-msgid "Error rendering component"
-msgstr ""
-
#: src/components/Boundary.tsx:14
+msgid "Error rendering component"
+msgstr "Render fejl af komponent"
+
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
-msgstr ""
+msgstr "Der opstod en fejl under render af denne komponent. Se konsollen for mere information."
#: src/components/DashboardItemProxy.tsx:34
#~ msgid "Title"
@@ -611,59 +612,59 @@ msgstr ""
#: src/components/barcodes/BarcodeCameraInput.tsx:103
msgid "Error while scanning"
-msgstr ""
+msgstr "Fejl ved scanning"
#: src/components/barcodes/BarcodeCameraInput.tsx:117
msgid "Error while stopping"
-msgstr ""
+msgstr "Fejl ved stop"
#: src/components/barcodes/BarcodeCameraInput.tsx:159
msgid "Start scanning by selecting a camera and pressing the play button."
-msgstr ""
+msgstr "Start scanningen ved at vælge et kamera og trykke på afspilningsknappen."
#: src/components/barcodes/BarcodeCameraInput.tsx:180
msgid "Stop scanning"
-msgstr ""
+msgstr "Stop scanning"
#: src/components/barcodes/BarcodeCameraInput.tsx:190
msgid "Start scanning"
-msgstr ""
+msgstr "Start scanning"
#: src/components/barcodes/BarcodeInput.tsx:34
#: src/tables/general/BarcodeScanTable.tsx:55
#: src/tables/settings/BarcodeScanHistoryTable.tsx:64
msgid "Barcode"
-msgstr ""
+msgstr "Stregkode"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
-msgstr ""
+msgstr "Scan"
#: src/components/barcodes/BarcodeInput.tsx:53
msgid "Camera Input"
-msgstr ""
+msgstr "Kamerainput"
#: src/components/barcodes/BarcodeInput.tsx:63
msgid "Scanner Input"
-msgstr ""
+msgstr "Scanner Input"
#: src/components/barcodes/BarcodeInput.tsx:105
msgid "Barcode Data"
-msgstr ""
+msgstr "Stregkode Data"
#: src/components/barcodes/BarcodeInput.tsx:109
msgid "No barcode data"
-msgstr ""
+msgstr "Ingen stregkode data"
#: src/components/barcodes/BarcodeInput.tsx:110
msgid "Scan or enter barcode data"
-msgstr ""
+msgstr "Scan eller angiv stregkodedata"
#: src/components/barcodes/BarcodeKeyboardInput.tsx:64
msgid "Enter barcode data"
-msgstr ""
+msgstr "Indtast stregkode data"
#: src/components/barcodes/BarcodeScanDialog.tsx:56
#: src/components/buttons/ScanButton.tsx:27
@@ -671,15 +672,15 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:509
#: src/forms/PurchaseOrderForms.tsx:615
msgid "Scan Barcode"
-msgstr ""
+msgstr "Scan stregkode"
#: src/components/barcodes/BarcodeScanDialog.tsx:121
msgid "No matching item found"
-msgstr ""
+msgstr "Ingen matchende vare fundet"
#: src/components/barcodes/BarcodeScanDialog.tsx:150
msgid "Barcode does not match the expected model type"
-msgstr ""
+msgstr "Stregkode matcher ikke den forventede modeltype"
#: src/components/barcodes/BarcodeScanDialog.tsx:161
#: src/components/editors/NotesEditor.tsx:84
@@ -691,52 +692,52 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:548
#: src/tables/settings/PendingTasksTable.tsx:68
msgid "Success"
-msgstr ""
+msgstr "Succes"
#: src/components/barcodes/BarcodeScanDialog.tsx:167
msgid "Failed to handle barcode"
-msgstr ""
+msgstr "Kunne ikke håndtere stregkode"
#: src/components/barcodes/BarcodeScanDialog.tsx:183
#: src/pages/Index/Scan.tsx:129
msgid "Failed to scan barcode"
-msgstr ""
+msgstr "Kunne ikke scanne stregkode"
#: src/components/barcodes/QRCode.tsx:94
msgid "Low (7%)"
-msgstr ""
+msgstr "Lavt (7%)"
#: src/components/barcodes/QRCode.tsx:95
msgid "Medium (15%)"
-msgstr ""
+msgstr "Mellem (15%)"
#: src/components/barcodes/QRCode.tsx:96
msgid "Quartile (25%)"
-msgstr ""
+msgstr "Kvartil (25%)"
#: src/components/barcodes/QRCode.tsx:97
msgid "High (30%)"
-msgstr ""
+msgstr "Højt (30%)"
#: src/components/barcodes/QRCode.tsx:107
msgid "Custom barcode"
-msgstr ""
+msgstr "Brugerdefineret stregkode"
#: src/components/barcodes/QRCode.tsx:108
msgid "A custom barcode is registered for this item. The shown code is not that custom barcode."
-msgstr ""
+msgstr "En brugerdefineret stregkode er registreret for dette element. Den viste kode er ikke den brugerdefinerede stregkode."
#: src/components/barcodes/QRCode.tsx:127
msgid "Barcode Data:"
-msgstr ""
+msgstr "Stregkode Data:"
#: src/components/barcodes/QRCode.tsx:138
msgid "Select Error Correction Level"
-msgstr ""
+msgstr "Vælg fejlkorrektions niveau"
#: src/components/barcodes/QRCode.tsx:170
msgid "Failed to link barcode"
-msgstr ""
+msgstr "Kunne ikke linke stregkode"
#: src/components/barcodes/QRCode.tsx:179
#: src/pages/part/PartDetail.tsx:521
@@ -746,21 +747,21 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:120
#: src/pages/stock/StockDetail.tsx:186
msgid "Link"
-msgstr ""
+msgstr "Tilknytning"
#: src/components/barcodes/QRCode.tsx:200
msgid "This will remove the link to the associated barcode"
-msgstr ""
+msgstr "Dette vil fjerne linket til den tilknyttede stregkode"
#: src/components/barcodes/QRCode.tsx:205
#: src/components/items/ActionDropdown.tsx:192
#: src/forms/PurchaseOrderForms.tsx:606
msgid "Unlink Barcode"
-msgstr ""
+msgstr "Fjern linket til stregkode"
#: src/components/buttons/AdminButton.tsx:86
msgid "Open in admin interface"
-msgstr ""
+msgstr "Åbn i admin interface"
#: src/components/buttons/CopyButton.tsx:18
#~ msgid "Copy to clipboard"
@@ -768,19 +769,19 @@ msgstr ""
#: src/components/buttons/CopyButton.tsx:42
msgid "Copied"
-msgstr ""
+msgstr "Kopieret"
#: src/components/buttons/CopyButton.tsx:42
msgid "Copy"
-msgstr ""
+msgstr "Kopier"
#: src/components/buttons/PrintingActions.tsx:56
msgid "Printing Labels"
-msgstr ""
+msgstr "Udskriver Etiketter"
#: src/components/buttons/PrintingActions.tsx:61
msgid "Printing Reports"
-msgstr ""
+msgstr "Udskriver Rapporter"
#: src/components/buttons/PrintingActions.tsx:77
#~ msgid "Printing"
@@ -798,14 +799,14 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
-msgstr ""
+msgstr "Udskriv Labels"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
-msgstr ""
+msgstr "Udskriv"
#: src/components/buttons/PrintingActions.tsx:152
#~ msgid "Generate"
@@ -819,29 +820,29 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
-msgstr ""
+msgstr "Udskriv rapport"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
-msgstr ""
+msgstr "Udskriver Handlinger"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
-msgstr ""
+msgstr "Udskriv labels"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
-msgstr ""
+msgstr "Udskriv Rapporter"
#: src/components/buttons/RemoveRowButton.tsx:9
msgid "Remove this row"
-msgstr ""
+msgstr "Slet denne række"
#: src/components/buttons/SSOButton.tsx:40
msgid "You will be redirected to the provider for further actions."
-msgstr ""
+msgstr "Du vil blive omdirigeret til udbyderen for yderligere handlinger."
#: src/components/buttons/SSOButton.tsx:44
#~ msgid "This provider is not full set up."
@@ -860,16 +861,16 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
-msgstr ""
+msgstr "Åbn spotlight"
#: src/components/buttons/StarredToggleButton.tsx:36
msgid "Subscription Updated"
-msgstr ""
+msgstr "Abonnement opdateret"
#: src/components/buttons/StarredToggleButton.tsx:57
#~ msgid "Unsubscribe from part"
@@ -877,328 +878,328 @@ msgstr ""
#: src/components/buttons/StarredToggleButton.tsx:66
msgid "Unsubscribe from notifications"
-msgstr ""
+msgstr "Afmeld notifikationer"
#: src/components/buttons/StarredToggleButton.tsx:67
msgid "Subscribe to notifications"
-msgstr ""
+msgstr "Tilmeld notifikationer"
#: src/components/calendar/Calendar.tsx:102
#: src/components/calendar/Calendar.tsx:165
msgid "Calendar Filters"
-msgstr ""
+msgstr "Kalender Filter"
#: src/components/calendar/Calendar.tsx:117
msgid "Previous month"
-msgstr ""
+msgstr "Forrige måned"
#: src/components/calendar/Calendar.tsx:126
msgid "Select month"
-msgstr ""
+msgstr "Vælg måned"
#: src/components/calendar/Calendar.tsx:147
msgid "Next month"
-msgstr ""
+msgstr "Næste måned"
#: src/components/calendar/Calendar.tsx:178
#: src/tables/InvenTreeTableHeader.tsx:294
msgid "Download data"
-msgstr ""
+msgstr "Download data"
#: src/components/calendar/OrderCalendar.tsx:132
msgid "Order Updated"
-msgstr ""
+msgstr "Ordre Opdateret"
#: src/components/calendar/OrderCalendar.tsx:142
msgid "Error updating order"
-msgstr ""
+msgstr "Fejl ved opdatering af ordre"
#: src/components/calendar/OrderCalendar.tsx:178
#: src/tables/Filter.tsx:152
msgid "Overdue"
-msgstr ""
+msgstr "Overskredet"
#: src/components/dashboard/DashboardLayout.tsx:282
msgid "Failed to load dashboard widgets."
-msgstr ""
+msgstr "Kunne ikke indlæse dashboard widgets."
#: src/components/dashboard/DashboardLayout.tsx:293
msgid "No Widgets Selected"
-msgstr ""
+msgstr "Ingen Widgets Valgt"
#: src/components/dashboard/DashboardLayout.tsx:296
msgid "Use the menu to add widgets to the dashboard"
-msgstr ""
+msgstr "Brug menuen til at tilføje widgets til dashboardet"
#: src/components/dashboard/DashboardMenu.tsx:62
#: src/components/dashboard/DashboardMenu.tsx:138
msgid "Accept Layout"
-msgstr ""
+msgstr "Accepter Layout"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
-msgstr ""
+msgstr "Dashboard"
#: src/components/dashboard/DashboardMenu.tsx:102
msgid "Edit Layout"
-msgstr ""
+msgstr "Rediger layout"
#: src/components/dashboard/DashboardMenu.tsx:111
msgid "Add Widget"
-msgstr ""
+msgstr "Tilføj Widget"
#: src/components/dashboard/DashboardMenu.tsx:120
msgid "Remove Widgets"
-msgstr ""
+msgstr "Fjern Widgets"
#: src/components/dashboard/DashboardMenu.tsx:129
msgid "Clear Widgets"
-msgstr ""
+msgstr "Nulstil Widgets"
#: src/components/dashboard/DashboardWidget.tsx:81
msgid "Remove this widget from the dashboard"
-msgstr ""
+msgstr "Fjern denne widget fra dashboardet"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:77
msgid "Filter dashboard widgets"
-msgstr ""
+msgstr "Filtrer dashboard widgets"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:98
msgid "Add this widget to the dashboard"
-msgstr ""
+msgstr "Tilføj denne widget til dashboardet"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:123
msgid "No Widgets Available"
-msgstr ""
+msgstr "Ingen Widgets Tilgængelige"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:124
msgid "There are no more widgets available for the dashboard"
-msgstr ""
+msgstr "Der er ikke flere widgets tilgængelige til dashboardet"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:24
msgid "Subscribed Parts"
-msgstr ""
+msgstr "Abonnerede Dele"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:25
msgid "Show the number of parts which you have subscribed to"
-msgstr ""
+msgstr "Vis antallet af dele, du har abonneret på"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:31
msgid "Subscribed Categories"
-msgstr ""
+msgstr "Abonnerede kategorier"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:32
msgid "Show the number of part categories which you have subscribed to"
-msgstr ""
+msgstr "Vis antallet af delkategorier, som du har abonneret på"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:41
msgid "Invalid BOMs"
-msgstr ""
+msgstr "Ugyldige styklister"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:42
msgid "Assemblies requiring bill of materials validation"
-msgstr ""
+msgstr "Samlinger, der kræver stukliste af materiale validering"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:53
#: src/tables/part/PartTable.tsx:263
msgid "Low Stock"
-msgstr ""
+msgstr "Få på lager"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:55
msgid "Show the number of parts which are low on stock"
-msgstr ""
+msgstr "Vis antallet af dele som er lave på lager"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:64
msgid "Required for Build Orders"
-msgstr ""
+msgstr "Påkrævet for byggeordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:66
msgid "Show parts which are required for active build orders"
-msgstr ""
+msgstr "Vis dele som er nødvendige for aktive byggeordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:71
msgid "Expired Stock Items"
-msgstr ""
+msgstr "Udløbet Lagervarer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:73
msgid "Show the number of stock items which have expired"
-msgstr ""
+msgstr "Vis antallet af lagervarer som er udløbet"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:79
msgid "Stale Stock Items"
-msgstr ""
+msgstr "Gamle Lagervarer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:81
msgid "Show the number of stock items which are stale"
-msgstr ""
+msgstr "Vis antallet af lagervarer som er forældede"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:87
msgid "Active Build Orders"
-msgstr ""
+msgstr "Aktive Byggeordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:89
msgid "Show the number of build orders which are currently active"
-msgstr ""
+msgstr "Vis antallet af byggeordrer som er aktive"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:94
msgid "Overdue Build Orders"
-msgstr ""
+msgstr "Forsinket Byggeordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:96
msgid "Show the number of build orders which are overdue"
-msgstr ""
+msgstr "Vis antallet af byggeordrer som er forfaldne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:101
msgid "Assigned Build Orders"
-msgstr ""
+msgstr "Tildelte Byggeordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:103
msgid "Show the number of build orders which are assigned to you"
-msgstr ""
+msgstr "Vis antallet af byggeordrer som er tildelt dig"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:108
msgid "Active Sales Orders"
-msgstr ""
+msgstr "Aktiver Salgsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:110
msgid "Show the number of sales orders which are currently active"
-msgstr ""
+msgstr "Vis antallet af salgsordrer som er aktive"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:115
msgid "Overdue Sales Orders"
-msgstr ""
+msgstr "Forfaldne Salgsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:117
msgid "Show the number of sales orders which are overdue"
-msgstr ""
+msgstr "Vis antallet af salgsordrer som er forfaldne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:122
msgid "Assigned Sales Orders"
-msgstr ""
+msgstr "Tildelte Salgsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:124
msgid "Show the number of sales orders which are assigned to you"
-msgstr ""
+msgstr "Vis antallet af salgsordrer, som er tildelt dig"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:129
#: src/pages/sales/SalesIndex.tsx:87
msgid "Pending Shipments"
-msgstr ""
+msgstr "Afventer Forsendelser"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:131
msgid "Show the number of pending sales order shipments"
-msgstr ""
+msgstr "Vis antallet af afventende forsendelser af salgsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:136
msgid "Active Purchase Orders"
-msgstr ""
+msgstr "Aktive Indkøbsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:138
msgid "Show the number of purchase orders which are currently active"
-msgstr ""
+msgstr "Vis antallet af indkøbsordrer som er aktive"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:143
msgid "Overdue Purchase Orders"
-msgstr ""
+msgstr "Forfaldne Indkøbsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:145
msgid "Show the number of purchase orders which are overdue"
-msgstr ""
+msgstr "Vis antallet af indkøbsordrer som er forfaldne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:150
msgid "Assigned Purchase Orders"
-msgstr ""
+msgstr "Tildelte Indkøbsordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:152
msgid "Show the number of purchase orders which are assigned to you"
-msgstr ""
+msgstr "Vis antallet af indkøbsordrer som er tildelt dig"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:157
msgid "Active Return Orders"
-msgstr ""
+msgstr "Aktive Returordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:159
msgid "Show the number of return orders which are currently active"
-msgstr ""
+msgstr "Vis antallet af returordrer som er aktive"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:164
msgid "Overdue Return Orders"
-msgstr ""
+msgstr "Forfaldne Returordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:166
msgid "Show the number of return orders which are overdue"
-msgstr ""
+msgstr "Vis antallet af returordrer som er forfaldne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:171
msgid "Assigned Return Orders"
-msgstr ""
+msgstr "Tildelte Returordrer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:173
msgid "Show the number of return orders which are assigned to you"
-msgstr ""
+msgstr "Vis antallet af returordrer, som er tildelt dig"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:193
#: src/components/dashboard/widgets/GetStartedWidget.tsx:15
#: src/defaults/links.tsx:86
msgid "Getting Started"
-msgstr ""
+msgstr "Sådan kommer du igang"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:194
#: src/defaults/links.tsx:89
msgid "Getting started with InvenTree"
-msgstr ""
+msgstr "Kom godt i gang med InvenTree"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:201
#: src/components/dashboard/widgets/NewsWidget.tsx:123
msgid "News Updates"
-msgstr ""
+msgstr "Nyhedsopdateringer"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:202
msgid "The latest news from InvenTree"
-msgstr ""
+msgstr "De seneste nyheder fra InvenTree"
#: src/components/dashboard/widgets/ColorToggleWidget.tsx:18
#: src/components/nav/MainMenu.tsx:93
msgid "Change Color Mode"
-msgstr ""
+msgstr "Skift Farvetilstand"
#: src/components/dashboard/widgets/ColorToggleWidget.tsx:23
msgid "Change the color mode of the user interface"
-msgstr ""
+msgstr "Skift farve for brugergrænseflade"
#: src/components/dashboard/widgets/LanguageSelectWidget.tsx:18
msgid "Change Language"
-msgstr ""
+msgstr "Ændre Sprog"
#: src/components/dashboard/widgets/LanguageSelectWidget.tsx:23
msgid "Change the language of the user interface"
-msgstr ""
+msgstr "Ændre sprog på brugergrænsefladen"
#: src/components/dashboard/widgets/NewsWidget.tsx:60
#: src/components/nav/NotificationDrawer.tsx:94
#: src/pages/Notifications.tsx:53
msgid "Mark as read"
-msgstr ""
+msgstr "Marker som læst"
#: src/components/dashboard/widgets/NewsWidget.tsx:115
msgid "Requires Superuser"
-msgstr ""
+msgstr "Kræver Superbruger"
#: src/components/dashboard/widgets/NewsWidget.tsx:116
msgid "This widget requires superuser permissions"
-msgstr ""
+msgstr "Denne widget kræver superbruger tilladelser"
#: src/components/dashboard/widgets/NewsWidget.tsx:133
msgid "No News"
-msgstr ""
+msgstr "Ingen Nyheder"
#: src/components/dashboard/widgets/NewsWidget.tsx:134
msgid "There are no unread news items"
-msgstr ""
+msgstr "Der er ingen ulæste nyheder"
#: src/components/details/Details.tsx:117
#~ msgid "Email:"
@@ -1210,38 +1211,38 @@ msgstr ""
#: src/pages/core/UserDetail.tsx:203
#: src/tables/settings/UserTable.tsx:410
msgid "Superuser"
-msgstr ""
+msgstr "Superbruger"
#: src/components/details/Details.tsx:124
#: src/pages/core/UserDetail.tsx:87
#: src/pages/core/UserDetail.tsx:200
#: src/tables/settings/UserTable.tsx:405
msgid "Staff"
-msgstr ""
+msgstr "Personale"
#: src/components/details/Details.tsx:125
msgid "Email: "
-msgstr ""
+msgstr "E-mail: "
#: src/components/details/Details.tsx:411
msgid "No name defined"
-msgstr ""
+msgstr "Intet navn defineret"
#: src/components/details/DetailsImage.tsx:77
msgid "Remove Image"
-msgstr ""
+msgstr "Fjern billede"
#: src/components/details/DetailsImage.tsx:80
msgid "Remove the associated image from this item?"
-msgstr ""
+msgstr "Fjern det tilknyttede billede fra denne vare?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1249,73 +1250,73 @@ msgstr ""
#: src/tables/sales/SalesOrderAllocationTable.tsx:224
#: src/tables/sales/SalesOrderAllocationTable.tsx:247
msgid "Remove"
-msgstr ""
+msgstr "Fjern"
#: src/components/details/DetailsImage.tsx:109
msgid "Drag and drop to upload"
-msgstr ""
+msgstr "Træk og slip for at uploade"
#: src/components/details/DetailsImage.tsx:112
msgid "Click to select file(s)"
-msgstr ""
+msgstr "Klik for at vælge fil(er)"
#: src/components/details/DetailsImage.tsx:172
msgid "Image uploaded"
-msgstr ""
+msgstr "Billede uploadet"
#: src/components/details/DetailsImage.tsx:173
msgid "Image has been uploaded successfully"
-msgstr ""
+msgstr "Billede downloadet"
#: src/components/details/DetailsImage.tsx:180
#: src/tables/general/AttachmentTable.tsx:201
msgid "Upload Error"
-msgstr ""
+msgstr "Upload fejl"
#: src/components/details/DetailsImage.tsx:250
#: src/components/forms/fields/AutoFillRightSection.tsx:34
msgid "Clear"
-msgstr ""
+msgstr "Ryd"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
-msgstr ""
+msgstr "Indsend"
#: src/components/details/DetailsImage.tsx:300
msgid "Select from existing images"
-msgstr ""
+msgstr "Vælg fra eksisterende billeder"
#: src/components/details/DetailsImage.tsx:308
msgid "Select Image"
-msgstr ""
+msgstr "Vælg billede"
#: src/components/details/DetailsImage.tsx:324
msgid "Download remote image"
-msgstr ""
+msgstr "Download eksternt billede"
#: src/components/details/DetailsImage.tsx:339
msgid "Upload new image"
-msgstr ""
+msgstr "Upload nyt billede"
#: src/components/details/DetailsImage.tsx:346
msgid "Upload Image"
-msgstr ""
+msgstr "Upload billede"
#: src/components/details/DetailsImage.tsx:359
msgid "Delete image"
-msgstr ""
+msgstr "Slet billede"
#: src/components/details/DetailsImage.tsx:393
msgid "Download Image"
-msgstr ""
+msgstr "Download billede"
#: src/components/details/DetailsImage.tsx:398
msgid "Image downloaded successfully"
-msgstr ""
+msgstr "Billede downloadet"
#: src/components/details/PartIcons.tsx:43
#~ msgid "Part is a template part (variants can be made from this part)"
@@ -1347,23 +1348,23 @@ msgstr ""
#: src/components/editors/NotesEditor.tsx:75
msgid "Image upload failed"
-msgstr ""
+msgstr "Upload af billede fejlede"
#: src/components/editors/NotesEditor.tsx:85
msgid "Image uploaded successfully"
-msgstr ""
+msgstr "Billede blev uploadet"
#: src/components/editors/NotesEditor.tsx:119
msgid "Notes saved successfully"
-msgstr ""
+msgstr "Noter er gemt"
#: src/components/editors/NotesEditor.tsx:130
msgid "Failed to save notes"
-msgstr ""
+msgstr "Kunne ikke gemme noter"
#: src/components/editors/NotesEditor.tsx:133
msgid "Error Saving Notes"
-msgstr ""
+msgstr "Kunne Ikke Gemme Noter"
#: src/components/editors/NotesEditor.tsx:151
#~ msgid "Disable Editing"
@@ -1371,15 +1372,15 @@ msgstr ""
#: src/components/editors/NotesEditor.tsx:153
msgid "Save Notes"
-msgstr ""
+msgstr "Gem noter"
#: src/components/editors/NotesEditor.tsx:172
msgid "Close Editor"
-msgstr ""
+msgstr "Luk redigering"
#: src/components/editors/NotesEditor.tsx:179
msgid "Enable Editing"
-msgstr ""
+msgstr "Aktiver Redigering"
#: src/components/editors/NotesEditor.tsx:198
#~ msgid "Preview Notes"
@@ -1391,7 +1392,7 @@ msgstr ""
#: src/components/editors/TemplateEditor/CodeEditor/index.tsx:9
msgid "Code"
-msgstr ""
+msgstr "Kode"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:44
#~ msgid "Failed to parse error response from server."
@@ -1399,23 +1400,23 @@ msgstr ""
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:50
msgid "Error rendering preview"
-msgstr ""
+msgstr "Fejl under visning"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:120
msgid "Preview not available, click \"Reload Preview\"."
-msgstr ""
+msgstr "Forhåndsvisning ikke tilgængelig, klik \"Genindlæs forhåndsvisning\"."
#: src/components/editors/TemplateEditor/PdfPreview/index.tsx:9
msgid "PDF Preview"
-msgstr ""
+msgstr "PDF forhåndsvisning"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:110
msgid "Error loading template"
-msgstr ""
+msgstr "Fejl ved indlæsning af skabelon"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:122
msgid "Error saving template"
-msgstr ""
+msgstr "Fejl under gemning af skabelon"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:151
#~ msgid "Save & Reload preview?"
@@ -1423,36 +1424,36 @@ msgstr ""
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:159
msgid "Could not load the template from the server."
-msgstr ""
+msgstr "Kunne ikke indlæse skabelonen fra serveren."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:176
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:319
msgid "Save & Reload Preview"
-msgstr ""
+msgstr "Gem & Genindlæs Forhåndsvisning"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:181
msgid "Are you sure you want to Save & Reload the preview?"
-msgstr ""
+msgstr "Er du sikker på du vil gemme og genindlæse forhåndsvisningen?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:183
msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?"
-msgstr ""
+msgstr "For at vise forhåndsvisningen skal den nuværende skabelon udskiftes på serveren med dine ændringer, som kan ødelægge etiketten hvis den er under aktiv brug. Vil du fortsætte?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187
msgid "Save & Reload"
-msgstr ""
+msgstr "Gem & Genindlæs"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219
msgid "Preview updated"
-msgstr ""
+msgstr "Forhåndsvisning opdateret"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:220
msgid "The preview has been updated successfully."
-msgstr ""
+msgstr "Forhåndsvisningen er blevet opdateret."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:236
msgid "An unknown error occurred while rendering the preview."
-msgstr ""
+msgstr "En ukendt fejl opstod under render af forhåndsvisningen."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263
#~ msgid "Save & Reload preview"
@@ -1460,15 +1461,15 @@ msgstr ""
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:311
msgid "Reload preview"
-msgstr ""
+msgstr "Genindlæs forhåndsvisninger"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:312
msgid "Use the currently stored template from the server"
-msgstr ""
+msgstr "Brug den gemte skabelon fra serveren"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:320
msgid "Save the current template and reload the preview"
-msgstr ""
+msgstr "Gem den nuværende skabelon og genindlæs forhåndsvisningen"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:322
#~ msgid "to preview"
@@ -1476,65 +1477,65 @@ msgstr ""
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:379
msgid "Select instance to preview"
-msgstr ""
+msgstr "Vælg eksempel til forhåndsvisning"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:423
msgid "Error rendering template"
-msgstr ""
+msgstr "Render fejl af skabelon"
#: src/components/errors/ClientError.tsx:23
msgid "Client Error"
-msgstr ""
+msgstr "Klient Fejl"
#: src/components/errors/ClientError.tsx:24
msgid "Client error occurred"
-msgstr ""
+msgstr "Klient fejl opstod"
#: src/components/errors/GenericErrorPage.tsx:50
msgid "Status Code"
-msgstr ""
+msgstr "Status Kode"
#: src/components/errors/GenericErrorPage.tsx:63
msgid "Return to the index page"
-msgstr ""
+msgstr "Tilbage til indekssiden"
#: src/components/errors/NotAuthenticated.tsx:8
msgid "Not Authenticated"
-msgstr ""
+msgstr "Ikke Godkendt"
#: src/components/errors/NotAuthenticated.tsx:9
msgid "You are not logged in."
-msgstr ""
+msgstr "Du er ikke logget ind."
#: src/components/errors/NotFound.tsx:8
msgid "Page Not Found"
-msgstr ""
+msgstr "Side ikke fundet"
#: src/components/errors/NotFound.tsx:9
msgid "This page does not exist"
-msgstr ""
+msgstr "Siden eksisterer ikke"
#: src/components/errors/PermissionDenied.tsx:8
#: src/functions/notifications.tsx:25
msgid "Permission Denied"
-msgstr ""
+msgstr "Adgang nægtet"
#: src/components/errors/PermissionDenied.tsx:9
msgid "You do not have permission to view this page."
-msgstr ""
+msgstr "Du har ikke tilladelse til at se denne side."
#: src/components/errors/ServerError.tsx:8
msgid "Server Error"
-msgstr ""
+msgstr "Serverfejl"
#: src/components/errors/ServerError.tsx:9
msgid "A server error occurred"
-msgstr ""
+msgstr "Der opstod en serverfejl"
#: src/components/forms/ApiForm.tsx:107
#: src/components/forms/ApiForm.tsx:613
msgid "Form Error"
-msgstr ""
+msgstr "Formular Fejl"
#: src/components/forms/ApiForm.tsx:487
#~ msgid "Form Errors Exist"
@@ -1542,13 +1543,13 @@ msgstr ""
#: src/components/forms/ApiForm.tsx:623
msgid "Errors exist for one or more form fields"
-msgstr ""
+msgstr "Fejl findes i et eller flere formularfelter"
#: src/components/forms/ApiForm.tsx:734
#: src/hooks/UseForm.tsx:133
#: src/tables/plugin/PluginListTable.tsx:204
msgid "Update"
-msgstr ""
+msgstr "Opdater"
#: src/components/forms/AuthenticationForm.tsx:48
#: src/components/forms/AuthenticationForm.tsx:74
@@ -1571,50 +1572,50 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:73
msgid "Login successful"
-msgstr ""
+msgstr "Login succesfuld"
#: src/components/forms/AuthenticationForm.tsx:74
msgid "Logged in successfully"
-msgstr ""
+msgstr "Logget ind"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
-msgstr ""
+msgstr "Login mislykkedes"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
-msgstr ""
+msgstr "Tjek din indtastning og prøv igen."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
-msgstr ""
+msgstr "Mail levering succesfuld"
#: src/components/forms/AuthenticationForm.tsx:101
msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too."
-msgstr ""
+msgstr "Tjek din indbakke for login-linket. Hvis du har en konto, vil du modtage et login-link. Tjek også spam."
#: src/components/forms/AuthenticationForm.tsx:105
msgid "Mail delivery failed"
-msgstr ""
+msgstr "Mail levering mislykkedes"
#: src/components/forms/AuthenticationForm.tsx:125
msgid "Or continue with other methods"
-msgstr ""
+msgstr "Eller fortsæt med andre metoder"
#: src/components/forms/AuthenticationForm.tsx:136
#: src/components/forms/AuthenticationForm.tsx:296
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:64
#: src/pages/core/UserDetail.tsx:48
msgid "Username"
-msgstr ""
+msgstr "Brugernavn"
#: src/components/forms/AuthenticationForm.tsx:136
#~ msgid "I will use username and password"
@@ -1623,107 +1624,107 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:138
#: src/components/forms/AuthenticationForm.tsx:298
msgid "Your username"
-msgstr ""
+msgstr "Dit brugernavn"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
-msgstr ""
+msgstr "Adgangskode"
#: src/components/forms/AuthenticationForm.tsx:145
#: src/components/forms/AuthenticationForm.tsx:313
msgid "Your password"
-msgstr ""
+msgstr "Din adgangskode"
#: src/components/forms/AuthenticationForm.tsx:164
msgid "Reset password"
-msgstr ""
+msgstr "Nulstil adgangskode"
#: src/components/forms/AuthenticationForm.tsx:173
#: src/components/forms/AuthenticationForm.tsx:303
#: src/pages/Auth/Reset.tsx:17
#: src/pages/core/UserDetail.tsx:71
msgid "Email"
-msgstr ""
+msgstr "E-mail"
#: src/components/forms/AuthenticationForm.tsx:174
#: src/pages/Auth/Reset.tsx:18
msgid "We will send you a link to login - if you are registered"
-msgstr ""
+msgstr "Vi vil sende dig et link til login - hvis du er registreret"
#: src/components/forms/AuthenticationForm.tsx:190
msgid "Send me an email"
-msgstr ""
+msgstr "Send mig en e-mail"
#: src/components/forms/AuthenticationForm.tsx:192
msgid "Use username and password"
-msgstr ""
+msgstr "Brug brugernavn og adgangskode"
#: src/components/forms/AuthenticationForm.tsx:201
msgid "Log In"
-msgstr ""
+msgstr "Log Ind"
#: src/components/forms/AuthenticationForm.tsx:203
#: src/pages/Auth/Reset.tsx:26
msgid "Send Email"
-msgstr ""
+msgstr "Send E-mail"
#: src/components/forms/AuthenticationForm.tsx:239
msgid "Passwords do not match"
-msgstr ""
+msgstr "Adgangskoder stemmer ikke overens"
#: src/components/forms/AuthenticationForm.tsx:256
msgid "Registration successful"
-msgstr ""
+msgstr "Registrering gennemført"
#: src/components/forms/AuthenticationForm.tsx:257
msgid "Please confirm your email address to complete the registration"
-msgstr ""
+msgstr "Bekræft venligst din e-mailadresse for at fuldføre registreringen"
#: src/components/forms/AuthenticationForm.tsx:280
msgid "Input error"
-msgstr ""
+msgstr "Indtastningsfejl"
#: src/components/forms/AuthenticationForm.tsx:281
msgid "Check your input and try again. "
-msgstr ""
+msgstr "Tjek din indtastning og prøv igen. "
#: src/components/forms/AuthenticationForm.tsx:305
msgid "This will be used for a confirmation"
-msgstr ""
+msgstr "Dette vil blive brugt til en bekræftelse"
#: src/components/forms/AuthenticationForm.tsx:318
msgid "Password repeat"
-msgstr ""
+msgstr "Gentag adgangskode"
#: src/components/forms/AuthenticationForm.tsx:320
msgid "Repeat password"
-msgstr ""
+msgstr "Gentag Password"
#: src/components/forms/AuthenticationForm.tsx:332
#: src/pages/Auth/Login.tsx:121
#: src/pages/Auth/Register.tsx:13
msgid "Register"
-msgstr ""
+msgstr "Registrer"
#: src/components/forms/AuthenticationForm.tsx:338
msgid "Or use SSO"
-msgstr ""
+msgstr "Eller brug Single Sign-on"
#: src/components/forms/AuthenticationForm.tsx:348
msgid "Registration not active"
-msgstr ""
+msgstr "Registrering ikke aktiv"
#: src/components/forms/AuthenticationForm.tsx:349
msgid "This might be related to missing mail settings or could be a deliberate decision."
-msgstr ""
+msgstr "Dette kan være relateret til manglende mail-indstillinger eller kunne være en bevidst beslutning."
#: src/components/forms/HostOptionsForm.tsx:36
#: src/components/forms/HostOptionsForm.tsx:67
msgid "Host"
-msgstr ""
+msgstr "Vært"
#: src/components/forms/HostOptionsForm.tsx:42
#: src/components/forms/HostOptionsForm.tsx:70
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1745,22 +1746,22 @@ msgstr ""
#: src/tables/settings/PendingTasksTable.tsx:37
#: src/tables/stock/LocationTypesTable.tsx:74
msgid "Name"
-msgstr ""
+msgstr "Navn"
#: src/components/forms/HostOptionsForm.tsx:75
msgid "No one here..."
-msgstr ""
+msgstr "Ingen her..."
#: src/components/forms/HostOptionsForm.tsx:86
msgid "Add Host"
-msgstr ""
+msgstr "Tilføj Vært"
#: src/components/forms/HostOptionsForm.tsx:90
#: src/components/items/RoleTable.tsx:224
#: src/components/items/TransferList.tsx:215
#: src/components/items/TransferList.tsx:223
msgid "Save"
-msgstr ""
+msgstr "Gem"
#: src/components/forms/InstanceOptions.tsx:43
#~ msgid "Select destination instance"
@@ -1768,12 +1769,12 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:58
msgid "Select Server"
-msgstr ""
+msgstr "Vælg Server"
#: src/components/forms/InstanceOptions.tsx:68
#: src/components/forms/InstanceOptions.tsx:92
msgid "Edit host options"
-msgstr ""
+msgstr "Rediger vært indstillinger"
#: src/components/forms/InstanceOptions.tsx:71
#~ msgid "Edit possible host options"
@@ -1781,7 +1782,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:76
msgid "Save host selection"
-msgstr ""
+msgstr "Gem værtsvalg"
#: src/components/forms/InstanceOptions.tsx:98
#~ msgid "Version: {0}"
@@ -1802,26 +1803,27 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:118
#: src/pages/Index/Settings/SystemSettings.tsx:46
msgid "Server"
-msgstr ""
+msgstr "Server"
#: src/components/forms/InstanceOptions.tsx:130
#: src/components/plugins/PluginDrawer.tsx:88
#: src/tables/plugin/PluginListTable.tsx:127
msgid "Version"
-msgstr ""
+msgstr "Version"
#: src/components/forms/InstanceOptions.tsx:136
#: src/components/modals/AboutInvenTreeModal.tsx:124
#: src/components/modals/ServerInfoModal.tsx:34
msgid "API Version"
-msgstr ""
+msgstr "API Version"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
-msgstr ""
+msgstr "Plugins"
#: src/components/forms/InstanceOptions.tsx:143
#: src/tables/general/ParameterTemplateTable.tsx:153
@@ -1831,74 +1833,74 @@ msgstr ""
#: src/tables/settings/TemplateTable.tsx:362
#: src/tables/stock/StockItemTestResultTable.tsx:419
msgid "Enabled"
-msgstr ""
+msgstr "Aktiveret"
#: src/components/forms/InstanceOptions.tsx:143
msgid "Disabled"
-msgstr ""
+msgstr "Deaktiveret"
#: src/components/forms/InstanceOptions.tsx:149
msgid "Worker"
-msgstr ""
+msgstr "Arbejder"
#: src/components/forms/InstanceOptions.tsx:150
#: src/tables/settings/FailedTasksTable.tsx:48
msgid "Stopped"
-msgstr ""
+msgstr "Standset"
#: src/components/forms/InstanceOptions.tsx:150
msgid "Running"
-msgstr ""
+msgstr "Køre"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "Vælg den fil, du vil uploade"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "Accepter foreslået værdi"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "Vælg dato"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
-msgstr ""
+msgstr "Intet ikon valgt"
#: src/components/forms/fields/IconField.tsx:161
msgid "Uncategorized"
-msgstr ""
+msgstr "Ukategoriseret"
#: src/components/forms/fields/IconField.tsx:211
#: src/components/nav/Layout.tsx:138
#: src/tables/part/PartThumbTable.tsx:199
msgid "Search..."
-msgstr ""
+msgstr "Søg..."
#: src/components/forms/fields/IconField.tsx:225
#: src/components/wizards/ImportPartWizard.tsx:304
msgid "Select category"
-msgstr ""
+msgstr "Vælg kategori"
#: src/components/forms/fields/IconField.tsx:234
msgid "Select pack"
-msgstr ""
+msgstr "Vælg pakke"
#. placeholder {0}: filteredIcons.length
#: src/components/forms/fields/IconField.tsx:239
msgid "{0} icons"
-msgstr ""
+msgstr "{0} ikoner"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
-msgstr ""
+msgstr "Indlæser"
#: src/components/forms/fields/RelatedModelField.tsx:482
msgid "No results found"
-msgstr ""
+msgstr "Ingen resultater fundet"
#: src/components/forms/fields/TableField.tsx:46
msgid "modelRenderer entry required for tables"
@@ -1906,11 +1908,11 @@ msgstr ""
#: src/components/forms/fields/TableField.tsx:187
msgid "No entries available"
-msgstr ""
+msgstr "Ingen poster tilgængelige"
#: src/components/forms/fields/TableField.tsx:198
msgid "Add new row"
-msgstr ""
+msgstr "Tilføj ny række"
#: src/components/images/DetailsImage.tsx:252
#~ msgid "Select image"
@@ -1918,77 +1920,77 @@ msgstr ""
#: src/components/images/Thumbnail.tsx:12
msgid "Thumbnail"
-msgstr ""
+msgstr "Thumbnail"
#: src/components/importer/ImportDataSelector.tsx:175
msgid "Importing Rows"
-msgstr ""
+msgstr "Importerer Rækker"
#: src/components/importer/ImportDataSelector.tsx:176
msgid "Please wait while the data is imported"
-msgstr ""
+msgstr "Vent venligst mens data importeres"
#: src/components/importer/ImportDataSelector.tsx:193
msgid "An error occurred while importing data"
-msgstr ""
+msgstr "En fejl opstod under import af data"
#: src/components/importer/ImportDataSelector.tsx:214
msgid "Edit Data"
-msgstr ""
+msgstr "Rediger data"
#: src/components/importer/ImportDataSelector.tsx:246
msgid "Delete Row"
-msgstr ""
+msgstr "Slet række"
#: src/components/importer/ImportDataSelector.tsx:276
msgid "Row"
-msgstr ""
+msgstr "Række"
#: src/components/importer/ImportDataSelector.tsx:294
msgid "Row contains errors"
-msgstr ""
+msgstr "Rækken indeholder fejl"
#: src/components/importer/ImportDataSelector.tsx:335
msgid "Accept"
-msgstr ""
+msgstr "Acceptere"
#: src/components/importer/ImportDataSelector.tsx:368
msgid "Valid"
-msgstr ""
+msgstr "Gyldig"
#: src/components/importer/ImportDataSelector.tsx:369
msgid "Filter by row validation status"
-msgstr ""
+msgstr "Filtrer efter rækkevaliderings status"
#: src/components/importer/ImportDataSelector.tsx:374
#: src/components/wizards/WizardDrawer.tsx:113
#: src/tables/build/BuildOutputTable.tsx:533
msgid "Complete"
-msgstr ""
+msgstr "Færdiggjort"
#: src/components/importer/ImportDataSelector.tsx:375
msgid "Filter by row completion status"
-msgstr ""
+msgstr "Filtrer efter rækkefuldførelse status"
#: src/components/importer/ImportDataSelector.tsx:393
msgid "Import selected rows"
-msgstr ""
+msgstr "Importer markerede rækker"
#: src/components/importer/ImportDataSelector.tsx:408
msgid "Processing Data"
-msgstr ""
+msgstr "Behandler Data"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
-msgstr ""
+msgstr "En feil opstod"
#: src/components/importer/ImporterColumnSelector.tsx:69
msgid "Select column, or leave blank to ignore this field."
-msgstr ""
+msgstr "Vælg kolonne, eller efterlad blank for at ignorere dette felt."
#: src/components/importer/ImporterColumnSelector.tsx:91
#~ msgid "Select a column from the data file"
@@ -2002,57 +2004,61 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
-msgstr ""
+msgstr "Ignorer dette felt"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
-msgstr ""
+msgstr "Kortlægning af datakolonner til databasefelter"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
-msgstr ""
+msgstr "Accepter Kolonnekortlægning"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
-msgstr ""
+msgstr "Databasefelt"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
-msgstr ""
+msgstr "Feltbeskrivelse"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
-msgstr ""
+msgstr "Importerede Kolonne"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
-msgstr ""
+msgstr "Standardværdi"
#: src/components/importer/ImporterDrawer.tsx:43
msgid "Upload File"
-msgstr ""
+msgstr "Upload Fil"
#: src/components/importer/ImporterDrawer.tsx:44
msgid "Map Columns"
-msgstr ""
+msgstr "Kortlæg Koloner"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr ""
+msgid "Import Rows"
+msgstr "Importer Rækker"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
-msgstr ""
+msgstr "Behandler Data"
#: src/components/importer/ImporterDrawer.tsx:47
msgid "Complete Import"
-msgstr ""
+msgstr "Færdiggør Import"
#: src/components/importer/ImporterDrawer.tsx:89
msgid "Failed to fetch import session data"
-msgstr ""
+msgstr "Kunne ikke import sessionsdata"
#: src/components/importer/ImporterDrawer.tsx:97
#~ msgid "Cancel import session"
@@ -2060,20 +2066,20 @@ msgstr ""
#: src/components/importer/ImporterDrawer.tsx:104
msgid "Import Complete"
-msgstr ""
+msgstr "Import fuldført"
#: src/components/importer/ImporterDrawer.tsx:107
msgid "Data has been imported successfully"
-msgstr ""
+msgstr "Data er blevet importeret"
#: src/components/importer/ImporterDrawer.tsx:109
#: src/components/modals/AboutInvenTreeModal.tsx:205
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
-msgstr ""
+msgstr "Luk"
#: src/components/importer/ImporterDrawer.tsx:119
#~ msgid "Import session has unknown status"
@@ -2081,7 +2087,7 @@ msgstr ""
#: src/components/importer/ImporterDrawer.tsx:128
msgid "Importing Data"
-msgstr ""
+msgstr "Importerer data"
#: src/components/importer/ImporterImportProgress.tsx:36
#~ msgid "Importing Records"
@@ -2093,11 +2099,11 @@ msgstr ""
#: src/components/importer/ImporterStatus.tsx:19
msgid "Unknown Status"
-msgstr ""
+msgstr "Ukendt status"
#: src/components/items/ActionDropdown.tsx:135
msgid "Options"
-msgstr ""
+msgstr "Indstillinger"
#: src/components/items/ActionDropdown.tsx:162
#~ msgid "Link custom barcode"
@@ -2107,44 +2113,44 @@ msgstr ""
#: src/tables/InvenTreeTableHeader.tsx:193
#: src/tables/InvenTreeTableHeader.tsx:194
msgid "Barcode Actions"
-msgstr ""
+msgstr "Stregkode Handlinger"
#: src/components/items/ActionDropdown.tsx:176
msgid "View Barcode"
-msgstr ""
+msgstr "Vis stregkode"
#: src/components/items/ActionDropdown.tsx:178
msgid "View barcode"
-msgstr ""
+msgstr "Vis stregkode"
#: src/components/items/ActionDropdown.tsx:184
msgid "Link Barcode"
-msgstr ""
+msgstr "Link Barkode"
#: src/components/items/ActionDropdown.tsx:186
msgid "Link a custom barcode to this item"
-msgstr ""
+msgstr "Link en brugerdefineret stregkode til dette element"
#: src/components/items/ActionDropdown.tsx:194
msgid "Unlink custom barcode"
-msgstr ""
+msgstr "Fjern link til tilpasset stregkode"
#: src/components/items/ActionDropdown.tsx:246
msgid "Edit item"
-msgstr ""
+msgstr "Rediger vare"
#: src/components/items/ActionDropdown.tsx:258
msgid "Delete item"
-msgstr ""
+msgstr "Slet vare"
#: src/components/items/ActionDropdown.tsx:266
#: src/components/items/ActionDropdown.tsx:267
msgid "Hold"
-msgstr ""
+msgstr "Hold"
#: src/components/items/ActionDropdown.tsx:290
msgid "Duplicate item"
-msgstr ""
+msgstr "Dupliker vare"
#: src/components/items/BarcodeInput.tsx:24
#~ msgid "Scan barcode data here using barcode scanner"
@@ -2152,18 +2158,18 @@ msgstr ""
#: src/components/items/ColorToggle.tsx:17
msgid "Toggle color scheme"
-msgstr ""
+msgstr "Slå farvetema til/fra"
#: src/components/items/DocTooltip.tsx:92
#: src/components/items/GettingStartedCarousel.tsx:20
msgid "Read More"
-msgstr ""
+msgstr "Læs mere"
#: src/components/items/ErrorItem.tsx:8
#: src/functions/api.tsx:51
#: src/tables/settings/PendingTasksTable.tsx:80
msgid "Unknown error"
-msgstr ""
+msgstr "Ukendt fejl"
#: src/components/items/ErrorItem.tsx:13
#~ msgid "An error occurred:"
@@ -2175,20 +2181,20 @@ msgstr ""
#: src/components/items/InfoItem.tsx:27
msgid "None"
-msgstr ""
+msgstr "Ingen"
#: src/components/items/InvenTreeLogo.tsx:23
msgid "InvenTree Logo"
-msgstr ""
+msgstr "InvenTree Logo"
#: src/components/items/LanguageToggle.tsx:21
msgid "Select language"
-msgstr ""
+msgstr "Vælg sprog"
#: src/components/items/OnlyStaff.tsx:10
#: src/components/modals/AboutInvenTreeModal.tsx:50
msgid "This information is only available for staff users"
-msgstr ""
+msgstr "Denne information er kun tilgængelig for personalet"
#: src/components/items/Placeholder.tsx:14
#~ msgid "This feature/button/site is a placeholder for a feature that is not implemented, only partial or intended for testing."
@@ -2200,75 +2206,75 @@ msgstr ""
#: src/components/items/RoleTable.tsx:81
msgid "Updating"
-msgstr ""
+msgstr "Opdaterer"
#: src/components/items/RoleTable.tsx:82
msgid "Updating group roles"
-msgstr ""
+msgstr "Opdaterer grupperoller"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
-msgstr ""
+msgstr "Opdateret"
#: src/components/items/RoleTable.tsx:119
msgid "Group roles updated"
-msgstr ""
+msgstr "Gruppe roller opdateret"
#: src/components/items/RoleTable.tsx:135
msgid "Role"
-msgstr ""
+msgstr "Rolle"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
-msgstr ""
+msgstr "Vis"
#: src/components/items/RoleTable.tsx:145
msgid "Change"
-msgstr ""
+msgstr "Ændre"
#: src/components/items/RoleTable.tsx:150
#: src/forms/StockForms.tsx:941
#: src/tables/stock/StockItemTestResultTable.tsx:367
msgid "Add"
-msgstr ""
+msgstr "Tilføj"
#: src/components/items/RoleTable.tsx:203
msgid "Reset group roles"
-msgstr ""
+msgstr "Nulstil grupperoller"
#: src/components/items/RoleTable.tsx:212
msgid "Reset"
-msgstr ""
+msgstr "Nulstil"
#: src/components/items/RoleTable.tsx:215
msgid "Save group roles"
-msgstr ""
+msgstr "Gem grupperoller"
#: src/components/items/TransferList.tsx:65
msgid "No items"
-msgstr ""
+msgstr "Ingen varer"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
#: src/tables/stock/StockItemTable.tsx:343
msgid "Available"
-msgstr ""
+msgstr "Tilgængelig"
#: src/components/items/TransferList.tsx:162
msgid "Selected"
-msgstr ""
+msgstr "Valgt"
#: src/components/modals/AboutInvenTreeModal.tsx:103
#~ msgid "Your InvenTree version status is"
@@ -2276,15 +2282,15 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:118
msgid "InvenTree Version"
-msgstr ""
+msgstr "InvenTree Version"
#: src/components/modals/AboutInvenTreeModal.tsx:130
msgid "Python Version"
-msgstr ""
+msgstr "Python Version"
#: src/components/modals/AboutInvenTreeModal.tsx:135
msgid "Django Version"
-msgstr ""
+msgstr "Django Version"
#: src/components/modals/AboutInvenTreeModal.tsx:144
msgid "Commit Hash"
@@ -2300,7 +2306,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:165
msgid "Version Information"
-msgstr ""
+msgstr "Versionsinformation"
#: src/components/modals/AboutInvenTreeModal.tsx:165
#~ msgid "Credits"
@@ -2316,25 +2322,25 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:174
msgid "Links"
-msgstr ""
+msgstr "Links"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
-msgstr ""
+msgstr "Dokumentation"
#: src/components/modals/AboutInvenTreeModal.tsx:181
msgid "Source Code"
-msgstr ""
+msgstr "Kilde Kode"
#: src/components/modals/AboutInvenTreeModal.tsx:182
msgid "Mobile App"
-msgstr ""
+msgstr "Mobil App"
#: src/components/modals/AboutInvenTreeModal.tsx:183
msgid "Submit Bug Report"
-msgstr ""
+msgstr "Indsend Fejlrapport"
#: src/components/modals/AboutInvenTreeModal.tsx:189
#: src/components/modals/ServerInfoModal.tsx:147
@@ -2343,39 +2349,39 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:195
msgid "Copy version information"
-msgstr ""
+msgstr "Kopier versionsinformation"
#: src/components/modals/AboutInvenTreeModal.tsx:215
msgid "Development Version"
-msgstr ""
+msgstr "Udviklings Version"
#: src/components/modals/AboutInvenTreeModal.tsx:217
msgid "Up to Date"
-msgstr ""
+msgstr "Op til dato"
#: src/components/modals/AboutInvenTreeModal.tsx:219
msgid "Update Available"
-msgstr ""
+msgstr "Opdatering tilgængelig"
#: src/components/modals/LicenseModal.tsx:41
msgid "No license text available"
-msgstr ""
+msgstr "Ingen licenstekst tilgængelig"
#: src/components/modals/LicenseModal.tsx:48
msgid "No Information provided - this is likely a server issue"
-msgstr ""
+msgstr "Ingen information leveret - dette er sandsynligvis et server problem"
#: src/components/modals/LicenseModal.tsx:81
msgid "Loading license information"
-msgstr ""
+msgstr "Indlæser licensinformation"
#: src/components/modals/LicenseModal.tsx:87
msgid "Failed to fetch license information"
-msgstr ""
+msgstr "Kunne ikke hente licensinformation"
#: src/components/modals/LicenseModal.tsx:99
msgid "{key} Packages"
-msgstr ""
+msgstr "{key} Pakker"
#: src/components/modals/QrCodeModal.tsx:24
#~ msgid "Unknown response"
@@ -2395,7 +2401,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:28
msgid "Server Version"
-msgstr ""
+msgstr "Server Version"
#: src/components/modals/ServerInfoModal.tsx:38
#~ msgid "Bebug Mode"
@@ -2403,40 +2409,40 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:40
msgid "Database"
-msgstr ""
+msgstr "Database"
#: src/components/modals/ServerInfoModal.tsx:49
#: src/components/nav/Alerts.tsx:120
msgid "Debug Mode"
-msgstr ""
+msgstr "Fejlfindingstilstand"
#: src/components/modals/ServerInfoModal.tsx:54
msgid "Server is running in debug mode"
-msgstr ""
+msgstr "Serveren kører i fejlfindingstilstand"
#: src/components/modals/ServerInfoModal.tsx:62
msgid "Docker Mode"
-msgstr ""
+msgstr "Docker-tilstand"
#: src/components/modals/ServerInfoModal.tsx:65
msgid "Server is deployed using docker"
-msgstr ""
+msgstr "Serveren er indsat ved hjælp af docker"
#: src/components/modals/ServerInfoModal.tsx:71
msgid "Plugin Support"
-msgstr ""
+msgstr "Plugin Understøttede"
#: src/components/modals/ServerInfoModal.tsx:76
msgid "Plugin support enabled"
-msgstr ""
+msgstr "Plugin understøttelse aktiveret"
#: src/components/modals/ServerInfoModal.tsx:78
msgid "Plugin support disabled"
-msgstr ""
+msgstr "Plugin understøttelse deaktiveret"
#: src/components/modals/ServerInfoModal.tsx:85
msgid "Server status"
-msgstr ""
+msgstr "Server detaljer"
#: src/components/modals/ServerInfoModal.tsx:91
msgid "Healthy"
@@ -2444,16 +2450,16 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:93
msgid "Issues detected"
-msgstr ""
+msgstr "Problemer identificeret"
#: src/components/modals/ServerInfoModal.tsx:102
#: src/components/nav/Alerts.tsx:127
msgid "Background Worker"
-msgstr ""
+msgstr "Baggrunds Arbejder"
#: src/components/modals/ServerInfoModal.tsx:107
msgid "The background worker process is not running"
-msgstr ""
+msgstr "Baggrunds processen kører ikke"
#: src/components/modals/ServerInfoModal.tsx:107
#~ msgid "The Background worker process is not running."
@@ -2462,7 +2468,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:115
#: src/pages/Index/Settings/AdminCenter/Index.tsx:129
msgid "Email Settings"
-msgstr ""
+msgstr "E-mail indstillinger"
#: src/components/modals/ServerInfoModal.tsx:118
#~ msgid "Email settings not configured"
@@ -2471,47 +2477,47 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:120
#: src/components/nav/Alerts.tsx:143
msgid "Email settings not configured."
-msgstr ""
+msgstr "E-mail indstillinger ikke konfigureret."
#: src/components/nav/Alerts.tsx:57
msgid "Alerts"
-msgstr ""
+msgstr "Alarmer"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "Ingen problemer fundet"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
-msgstr ""
+msgstr "Serveren kører i fejlfindingstilstand."
#: src/components/nav/Alerts.tsx:129
msgid "The background worker process is not running."
-msgstr ""
+msgstr "Baggrunds processen kører ikke."
#: src/components/nav/Alerts.tsx:134
msgid "Server Restart"
-msgstr ""
+msgstr "Server Genstart"
#: src/components/nav/Alerts.tsx:136
msgid "The server requires a restart to apply changes."
-msgstr ""
+msgstr "Serveren kræver en genstart for at anvende ændringer."
#: src/components/nav/Alerts.tsx:141
msgid "Email settings"
-msgstr ""
+msgstr "E-mail indstillinger"
#: src/components/nav/Alerts.tsx:148
msgid "Database Migrations"
-msgstr ""
+msgstr "Database Migrationer"
#: src/components/nav/Alerts.tsx:150
msgid "There are pending database migrations."
-msgstr ""
+msgstr "Der er ventende databasemigreringer."
#: src/components/nav/Alerts.tsx:165
msgid "Learn more about {code}"
-msgstr ""
+msgstr "Lær mere om {code}"
#: src/components/nav/Header.tsx:188
#: src/components/nav/NavigationDrawer.tsx:134
@@ -2521,11 +2527,11 @@ msgstr ""
#: src/pages/Notifications.tsx:45
#: src/pages/Notifications.tsx:130
msgid "Notifications"
-msgstr ""
+msgstr "Notifikationer"
#: src/components/nav/Layout.tsx:141
msgid "Nothing found..."
-msgstr ""
+msgstr "Intet fundet..."
#: src/components/nav/MainMenu.tsx:40
#: src/pages/Index/Profile/Profile.tsx:15
@@ -2537,7 +2543,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/EmailManagementPanel.tsx:21
#: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:39
msgid "Settings"
-msgstr ""
+msgstr "Indstillinger"
#: src/components/nav/MainMenu.tsx:59
#: src/defaults/menuItems.tsx:15
@@ -2547,11 +2553,11 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
-msgstr ""
+msgstr "Brugerindstillinger"
#: src/components/nav/MainMenu.tsx:61
#: src/pages/Index/Settings/UserSettings.tsx:145
@@ -2565,11 +2571,11 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
-msgstr ""
+msgstr "Systemindstillinger"
#: src/components/nav/MainMenu.tsx:71
#~ msgid "Switch to pseudo language"
@@ -2578,22 +2584,22 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
-msgstr ""
+msgstr "Admin Center"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
-msgstr ""
+msgstr "Om InvenTree"
#: src/components/nav/MainMenu.tsx:108
msgid "Logout"
-msgstr ""
+msgstr "Log ud"
#: src/components/nav/NavHoverMenu.tsx:84
#~ msgid "View all"
@@ -2618,20 +2624,20 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
-msgstr ""
+msgstr "Lager"
#: src/components/nav/NavigationDrawer.tsx:84
#: src/defaults/links.tsx:48
#: src/pages/build/BuildDetail.tsx:753
#: src/pages/build/BuildIndex.tsx:101
msgid "Manufacturing"
-msgstr ""
+msgstr "Produktion"
#: src/components/nav/NavigationDrawer.tsx:91
#: src/defaults/links.tsx:54
@@ -2642,7 +2648,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:558
#: src/pages/purchasing/PurchasingIndex.tsx:212
msgid "Purchasing"
-msgstr ""
+msgstr "Indkøb"
#: src/components/nav/NavigationDrawer.tsx:98
#: src/defaults/links.tsx:60
@@ -2652,75 +2658,75 @@ msgstr ""
#: src/pages/sales/SalesOrderDetail.tsx:624
#: src/pages/sales/SalesOrderShipmentDetail.tsx:448
msgid "Sales"
-msgstr ""
+msgstr "Salg"
#: src/components/nav/NavigationDrawer.tsx:180
msgid "Navigation"
-msgstr ""
+msgstr "Navigation"
#: src/components/nav/NavigationDrawer.tsx:214
msgid "About"
-msgstr ""
+msgstr "Omkring"
#: src/components/nav/NavigationTree.tsx:212
msgid "Error loading navigation tree."
-msgstr ""
+msgstr "Fejl ved indlæsning af navigationstræ."
#: src/components/nav/NotificationDrawer.tsx:183
#: src/pages/Notifications.tsx:74
msgid "Mark all as read"
-msgstr ""
+msgstr "Marker alle som læst"
#: src/components/nav/NotificationDrawer.tsx:193
msgid "View all notifications"
-msgstr ""
+msgstr "Vis alle notifikationer"
#: src/components/nav/NotificationDrawer.tsx:216
msgid "You have no unread notifications."
-msgstr ""
+msgstr "Du har ingen ulæste notifikationer."
#: src/components/nav/NotificationDrawer.tsx:238
msgid "Error loading notifications."
-msgstr ""
+msgstr "Fejl ved indlæsning af notifikationer."
#: src/components/nav/SearchDrawer.tsx:106
msgid "No Overview Available"
-msgstr ""
+msgstr "Ingen Oversigt Tilgængelig"
#: src/components/nav/SearchDrawer.tsx:107
msgid "No overview available for this model type"
-msgstr ""
+msgstr "Ingen oversigt tilgængelig for denne modeltype"
#: src/components/nav/SearchDrawer.tsx:125
msgid "View all results"
-msgstr ""
+msgstr "Vis alle resultater"
#: src/components/nav/SearchDrawer.tsx:140
msgid "results"
-msgstr ""
+msgstr "resultater"
#: src/components/nav/SearchDrawer.tsx:144
msgid "Remove search group"
-msgstr ""
+msgstr "Fjern søgegruppe"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
-msgstr ""
+msgstr "Leverandører"
#: src/components/nav/SearchDrawer.tsx:298
#: src/pages/part/PartSupplierDetail.tsx:23
#: src/pages/purchasing/PurchasingIndex.tsx:149
msgid "Manufacturers"
-msgstr ""
+msgstr "Producenter"
#: src/components/nav/SearchDrawer.tsx:308
#: src/pages/sales/SalesIndex.tsx:133
msgid "Customers"
-msgstr ""
+msgstr "Kunder"
#: src/components/nav/SearchDrawer.tsx:462
#~ msgid "No results"
@@ -2728,20 +2734,20 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:477
msgid "Enter search text"
-msgstr ""
+msgstr "Indtast søgetekst"
#: src/components/nav/SearchDrawer.tsx:488
msgid "Refresh search results"
-msgstr ""
+msgstr "Opdater søgeresultater"
#: src/components/nav/SearchDrawer.tsx:499
#: src/components/nav/SearchDrawer.tsx:506
msgid "Search Options"
-msgstr ""
+msgstr "Søg Indstillinger"
#: src/components/nav/SearchDrawer.tsx:509
msgid "Whole word search"
-msgstr ""
+msgstr "Hele ord søgning"
#: src/components/nav/SearchDrawer.tsx:518
msgid "Regex search"
@@ -2749,63 +2755,63 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:527
msgid "Notes search"
-msgstr ""
+msgstr "Søg i noter"
#: src/components/nav/SearchDrawer.tsx:575
msgid "An error occurred during search query"
-msgstr ""
+msgstr "Der opstod en fejl under søgning"
#: src/components/nav/SearchDrawer.tsx:586
#: src/tables/part/PartTestTemplateTable.tsx:82
msgid "No Results"
-msgstr ""
+msgstr "Ingen Resultater"
#: src/components/nav/SearchDrawer.tsx:589
msgid "No results available for search query"
-msgstr ""
+msgstr "Ingen resultater til rådighed for søgeforespørgsel"
#: src/components/panels/AttachmentPanel.tsx:18
msgid "Attachments"
-msgstr ""
+msgstr "Vedhæftninger"
#: src/components/panels/NotesPanel.tsx:23
#: src/tables/part/PartTestResultTable.tsx:214
#: src/tables/stock/StockTrackingTable.tsx:212
msgid "Notes"
-msgstr ""
+msgstr "Noter"
#: src/components/panels/PanelGroup.tsx:158
msgid "Plugin Provided"
-msgstr ""
+msgstr "Plugin Leveret"
#: src/components/panels/PanelGroup.tsx:280
msgid "Collapse panels"
-msgstr ""
+msgstr "Skjul paneler"
#: src/components/panels/PanelGroup.tsx:280
msgid "Expand panels"
-msgstr ""
+msgstr "Vis paneler"
#: src/components/plugins/LocateItemButton.tsx:68
#: src/components/plugins/LocateItemButton.tsx:88
msgid "Locate Item"
-msgstr ""
+msgstr "Find Vare"
#: src/components/plugins/LocateItemButton.tsx:70
msgid "Item location requested"
-msgstr ""
+msgstr "Vare placering anmodet"
#: src/components/plugins/PluginDrawer.tsx:47
msgid "Plugin Inactive"
-msgstr ""
+msgstr "Plugin Inaktiv"
#: src/components/plugins/PluginDrawer.tsx:50
msgid "Plugin is not active"
-msgstr ""
+msgstr "Plugin er ikke aktiv"
#: src/components/plugins/PluginDrawer.tsx:59
msgid "Plugin Information"
-msgstr ""
+msgstr "Plugin Information"
#: src/components/plugins/PluginDrawer.tsx:73
#: src/forms/selectionListFields.tsx:102
@@ -2819,18 +2825,18 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
#: src/tables/machine/MachineTypeTable.tsx:255
#: src/tables/plugin/PluginListTable.tsx:110
msgid "Description"
-msgstr ""
+msgstr "Beskrivelse"
#: src/components/plugins/PluginDrawer.tsx:78
msgid "Author"
-msgstr ""
+msgstr "Forfatter"
#: src/components/plugins/PluginDrawer.tsx:83
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:41
@@ -2838,7 +2844,7 @@ msgstr ""
#: src/tables/ColumnRenderers.tsx:473
#: src/tables/part/PartTestResultTable.tsx:222
msgid "Date"
-msgstr ""
+msgstr "Dato"
#: src/components/plugins/PluginDrawer.tsx:93
#: src/forms/selectionListFields.tsx:103
@@ -2862,15 +2868,15 @@ msgstr ""
#: src/tables/settings/UserTable.tsx:400
#: src/tables/stock/StockItemTable.tsx:322
msgid "Active"
-msgstr ""
+msgstr "Aktiv"
#: src/components/plugins/PluginDrawer.tsx:105
msgid "Package Name"
-msgstr ""
+msgstr "Pakkenavn"
#: src/components/plugins/PluginDrawer.tsx:111
msgid "Installation Path"
-msgstr ""
+msgstr "Installationssti"
#: src/components/plugins/PluginDrawer.tsx:116
#: src/tables/machine/MachineTypeTable.tsx:182
@@ -2878,18 +2884,18 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:101
#: src/tables/plugin/PluginListTable.tsx:417
msgid "Builtin"
-msgstr ""
+msgstr "Indbygget"
#: src/components/plugins/PluginDrawer.tsx:121
msgid "Package"
-msgstr ""
+msgstr "Pakke"
#: src/components/plugins/PluginDrawer.tsx:133
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:55
#: src/pages/Index/Settings/SystemSettings.tsx:337
#: src/pages/Index/Settings/UserSettings.tsx:129
msgid "Plugin Settings"
-msgstr ""
+msgstr "Plugin indstillinger"
#: src/components/plugins/PluginPanel.tsx:87
#~ msgid "Error occurred while rendering plugin content"
@@ -2922,15 +2928,15 @@ msgstr ""
#: src/components/plugins/PluginUIFeature.tsx:120
msgid "Error Loading Plugin Editor"
-msgstr ""
+msgstr "Fejl Ved Indlæsning Af Plugin-Editor"
#: src/components/plugins/PluginUIFeature.tsx:158
msgid "Error occurred while rendering the template preview."
-msgstr ""
+msgstr "Fejl render af skabelonforhåndsvisningen."
#: src/components/plugins/PluginUIFeature.tsx:169
msgid "Error Loading Plugin Preview"
-msgstr ""
+msgstr "Fejl Under Indlæsning Af Plugin-forhåndsvisning"
#: src/components/plugins/RemoteComponent.tsx:111
msgid "Invalid source or function name"
@@ -2938,11 +2944,11 @@ msgstr ""
#: src/components/plugins/RemoteComponent.tsx:143
msgid "Error Loading Content"
-msgstr ""
+msgstr "Fejl ved indlæsning af indhold"
#: src/components/plugins/RemoteComponent.tsx:147
msgid "Error occurred while loading plugin content"
-msgstr ""
+msgstr "Fejl opstod under indlæsning af plugin indhold"
#: src/components/render/Instance.tsx:238
#~ msgid "Unknown model: {model}"
@@ -2950,7 +2956,7 @@ msgstr ""
#: src/components/render/Instance.tsx:247
msgid "Unknown model: {model_name}"
-msgstr ""
+msgstr "Ukendt model: {model_name}"
#: src/components/render/ModelType.tsx:234
#~ msgid "Purchase Order Line Item"
@@ -2971,7 +2977,7 @@ msgstr ""
#: src/components/render/Order.tsx:122
#: src/tables/sales/SalesOrderAllocationTable.tsx:173
msgid "Shipment"
-msgstr ""
+msgstr "Forsendelse"
#: src/components/render/Part.tsx:28
#: src/components/render/Plugin.tsx:17
@@ -2979,49 +2985,49 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
-msgstr ""
+msgstr "Inaktiv"
#: src/components/render/Part.tsx:31
#: src/tables/part/PartTable.tsx:281
#: src/tables/part/PartTable.tsx:285
#: src/tables/part/PartVariantTable.tsx:25
msgid "Virtual"
-msgstr ""
+msgstr "Virtuel"
#: src/components/render/Part.tsx:34
#: src/tables/bom/BomTable.tsx:307
#: src/tables/part/PartTable.tsx:152
msgid "No stock"
-msgstr ""
+msgstr "Intet lager"
#: src/components/render/Part.tsx:47
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
msgid "On Order"
-msgstr ""
+msgstr "På Ordre"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
msgid "In Production"
-msgstr ""
+msgstr "I Produktion"
#: src/components/render/Part.tsx:74
#: src/tables/stock/StockTrackingTable.tsx:206
msgid "Details"
-msgstr ""
+msgstr "Detaljer"
#: src/components/render/Part.tsx:112
#: src/components/wizards/ImportPartWizard.tsx:807
@@ -3031,12 +3037,12 @@ msgstr ""
#: src/tables/notifications/NotificationTable.tsx:32
#: src/tables/part/PartCategoryTemplateTable.tsx:78
msgid "Category"
-msgstr ""
+msgstr "Kategori"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3055,22 +3061,21 @@ msgstr ""
#: src/tables/Filter.tsx:400
#: src/tables/stock/StockTrackingTable.tsx:98
msgid "Location"
-msgstr ""
+msgstr "Lokation"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
-msgstr ""
+msgstr "Serienummer"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3092,24 +3097,24 @@ msgstr ""
#: src/tables/sales/ReturnOrderLineItemTable.tsx:124
#: src/tables/stock/StockTrackingTable.tsx:72
msgid "Quantity"
-msgstr ""
+msgstr "Antal"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
-msgstr ""
+msgstr "Batch"
#: src/components/settings/ConfigValueList.tsx:33
#~ msgid "<0>{0}0> is set via {1} and was last set {2}"
@@ -3117,21 +3122,21 @@ msgstr ""
#: src/components/settings/ConfigValueList.tsx:36
msgid "Setting"
-msgstr ""
+msgstr "Indstilling"
#: src/components/settings/ConfigValueList.tsx:39
msgid "Source"
-msgstr ""
+msgstr "Kilde"
#: src/components/settings/QuickAction.tsx:47
msgid "Act"
-msgstr ""
+msgstr "Handling"
#: src/components/settings/QuickAction.tsx:73
#: src/components/settings/QuickAction.tsx:113
#: src/tables/settings/ProjectCodeTable.tsx:46
msgid "Add Project Code"
-msgstr ""
+msgstr "Tilføj Projektkode"
#: src/components/settings/QuickAction.tsx:78
#: src/components/settings/QuickAction.tsx:124
@@ -3143,97 +3148,105 @@ msgstr ""
#: src/components/settings/QuickAction.tsx:85
msgid "Open an Issue"
-msgstr ""
+msgstr "Opret en sag"
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
-msgstr ""
+msgstr "Rapporter en fejl eller anmod om en funktion på GitHub"
#: src/components/settings/QuickAction.tsx:88
msgid "Open Issue"
-msgstr ""
+msgstr "Åben sag"
#: src/components/settings/QuickAction.tsx:97
msgid "Add New Group"
-msgstr ""
+msgstr "Tilføj ny gruupe"
#: src/components/settings/QuickAction.tsx:98
msgid "Create a new group to manage your users"
-msgstr ""
+msgstr "Opret en ny gruppe til at administrere dine brugere"
#: src/components/settings/QuickAction.tsx:100
msgid "New Group"
-msgstr ""
+msgstr "Ny Gruppe"
#: src/components/settings/QuickAction.tsx:105
msgid "Add New User"
-msgstr ""
+msgstr "Tilføj Ny Bruger"
#: src/components/settings/QuickAction.tsx:106
msgid "Create a new user to manage your groups"
-msgstr ""
+msgstr "Opret en ny bruger til at administrere dine grupper"
#: src/components/settings/QuickAction.tsx:108
msgid "New User"
-msgstr ""
+msgstr "Ny bruger"
#: src/components/settings/QuickAction.tsx:114
msgid "Create a new project code to organize your items"
-msgstr ""
+msgstr "Opret en ny projektkode til at organisere dine elementer"
#: src/components/settings/QuickAction.tsx:116
msgid "Add Code"
-msgstr ""
+msgstr "Tilføj kode"
#: src/components/settings/QuickAction.tsx:121
msgid "Add Custom State"
-msgstr ""
+msgstr "Tilføj Brugerdefineret Tilstand"
#: src/components/settings/QuickAction.tsx:122
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
-msgstr ""
+msgstr "Rediger indstilling"
#: src/components/settings/SettingList.tsx:85
msgid "Setting {key} updated successfully"
-msgstr ""
+msgstr "Indstilling af {key} opdateret"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
-msgstr ""
+msgstr "Indstillinger opdateret"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
-msgstr ""
+msgstr "Indstilling af {0} opdateret"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
-msgstr ""
+msgstr "Fejl under redigering af indstilling"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
-msgstr ""
+msgstr "Fejl ved indlæsning af indstillinger"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
-msgstr ""
+msgstr "Ingen indstillinger"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
-msgstr ""
+msgstr "Der er ingen tilgængelige konfigurerbar indstillinger"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
-msgstr ""
+msgstr "Ingen indstillinger specificeret"
#: src/components/tables/FilterGroup.tsx:29
#~ msgid "Add table filter"
@@ -3597,11 +3610,11 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:112
msgid "Current part"
-msgstr ""
+msgstr "Aktuelle del"
#: src/components/wizards/ImportPartWizard.tsx:118
msgid "Already Imported"
-msgstr ""
+msgstr "Allerede importeret"
#: src/components/wizards/ImportPartWizard.tsx:205
#: src/pages/company/CompanyDetail.tsx:137
@@ -3617,116 +3630,116 @@ msgstr ""
#: src/tables/purchasing/PurchaseOrderTable.tsx:109
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:40
msgid "Supplier"
-msgstr ""
+msgstr "Leverandør"
#: src/components/wizards/ImportPartWizard.tsx:221
#: src/forms/StockForms.tsx:614
msgid "Loading..."
-msgstr ""
+msgstr "Indlæser..."
#: src/components/wizards/ImportPartWizard.tsx:223
msgid "Error fetching suppliers"
-msgstr ""
+msgstr "Fejl ved hentning af leverandører"
#: src/components/wizards/ImportPartWizard.tsx:224
msgid "Select supplier"
-msgstr ""
+msgstr "Vælg leverandør"
#. placeholder {0}: searchResults.length
#: src/components/wizards/ImportPartWizard.tsx:246
msgid "Found {0} results"
-msgstr ""
+msgstr "Fandt {0} resultater"
#: src/components/wizards/ImportPartWizard.tsx:259
msgid "Import this part"
-msgstr ""
+msgstr "Importer denne del"
#: src/components/wizards/ImportPartWizard.tsx:313
msgid "Are you sure you want to import this part into the selected category now?"
-msgstr ""
+msgstr "Er du sikker på, du vil importere denne del til den valgte kategori nu?"
#: src/components/wizards/ImportPartWizard.tsx:326
msgid "Import Now"
-msgstr ""
+msgstr "Importer nu"
#: src/components/wizards/ImportPartWizard.tsx:372
msgid "Select and edit the parameters you want to add to this part."
-msgstr ""
+msgstr "Vælg og rediger de parametre, du vil tilføje til denne del."
#: src/components/wizards/ImportPartWizard.tsx:379
msgid "Default category parameters"
-msgstr ""
+msgstr "Standard kategori parametre"
#: src/components/wizards/ImportPartWizard.tsx:391
msgid "Other parameters"
-msgstr ""
+msgstr "Andre parametre"
#: src/components/wizards/ImportPartWizard.tsx:446
msgid "Add a new parameter"
-msgstr ""
+msgstr "Tilføj ny parameter"
#: src/components/wizards/ImportPartWizard.tsx:468
msgid "Skip"
-msgstr ""
+msgstr "Spring over"
#: src/components/wizards/ImportPartWizard.tsx:476
msgid "Create Parameters"
-msgstr ""
+msgstr "Opret Parametre"
#: src/components/wizards/ImportPartWizard.tsx:493
msgid "Create initial stock for the imported part."
-msgstr ""
+msgstr "Opret startlager til den importerede del."
#: src/components/wizards/ImportPartWizard.tsx:511
msgid "Next"
-msgstr ""
+msgstr "Næste"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
-msgstr ""
+msgstr "Rediger Del"
#: src/components/wizards/ImportPartWizard.tsx:567
msgid "Part imported successfully!"
-msgstr ""
+msgstr "Del importeret!"
#: src/components/wizards/ImportPartWizard.tsx:576
msgid "Failed to import part: "
-msgstr ""
+msgstr "Kunne ikke importere del: "
#: src/components/wizards/ImportPartWizard.tsx:641
msgid "Are you sure, you want to import the supplier and manufacturer part into this part?"
-msgstr ""
+msgstr "Er du sikker på, du vil importere leverandør og producent del i denne del?"
#: src/components/wizards/ImportPartWizard.tsx:655
msgid "Import"
-msgstr ""
+msgstr "Importer"
#: src/components/wizards/ImportPartWizard.tsx:692
msgid "Parameters created successfully!"
-msgstr ""
+msgstr "Parametre oprettet!"
#: src/components/wizards/ImportPartWizard.tsx:720
msgid "Failed to create parameters, please fix the errors and try again"
-msgstr ""
+msgstr "Mislykkedes at oprette parametre. Ret venligst fejlene og prøv igen"
#. placeholder {0}: supplierPart?.supplier
#: src/components/wizards/ImportPartWizard.tsx:740
msgid "Part imported successfully from supplier {0}."
-msgstr ""
+msgstr "Del importeret succesfuldt fra leverandør {0}."
#: src/components/wizards/ImportPartWizard.tsx:753
msgid "Open Part"
-msgstr ""
+msgstr "Åbn Del"
#: src/components/wizards/ImportPartWizard.tsx:760
msgid "Open Supplier Part"
-msgstr ""
+msgstr "Åben Leverandørdel"
#: src/components/wizards/ImportPartWizard.tsx:767
msgid "Open Manufacturer Part"
-msgstr ""
+msgstr "Åbn Producentdel"
#: src/components/wizards/ImportPartWizard.tsx:797
#: src/tables/part/PartTable.tsx:499
@@ -3735,151 +3748,151 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:803
msgid "Import Supplier Part"
-msgstr ""
+msgstr "Import leverandør del"
#: src/components/wizards/ImportPartWizard.tsx:805
msgid "Search Supplier Part"
-msgstr ""
+msgstr "Søg I Leverandørdel"
#: src/components/wizards/ImportPartWizard.tsx:807
msgid "Confirm import"
-msgstr ""
+msgstr "Bekræft import"
#: src/components/wizards/ImportPartWizard.tsx:809
msgid "Done"
-msgstr ""
+msgstr "Afslut"
#: src/components/wizards/OrderPartsWizard.tsx:75
msgid "Error fetching part requirements"
-msgstr ""
+msgstr "Fejl under hentning af delkrav"
#: src/components/wizards/OrderPartsWizard.tsx:113
msgid "Requirements"
-msgstr ""
+msgstr "Krav"
#: src/components/wizards/OrderPartsWizard.tsx:117
msgid "Build Requirements"
-msgstr ""
+msgstr "Bygge Krav"
#: src/components/wizards/OrderPartsWizard.tsx:123
msgid "Sales Requirements"
-msgstr ""
+msgstr "Salgs Krav"
#: src/components/wizards/OrderPartsWizard.tsx:129
#: src/forms/StockForms.tsx:894
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
-msgstr ""
+msgstr "På Lager"
#: src/components/wizards/OrderPartsWizard.tsx:146
#: src/tables/build/BuildLineTable.tsx:405
msgid "Required Quantity"
-msgstr ""
+msgstr "Krævet Antal"
#: src/components/wizards/OrderPartsWizard.tsx:203
msgid "New Purchase Order"
-msgstr ""
+msgstr "Ny Indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:205
msgid "Purchase order created"
-msgstr ""
+msgstr "Indkøbsordre oprettet"
#: src/components/wizards/OrderPartsWizard.tsx:217
msgid "New Supplier Part"
-msgstr ""
+msgstr "Vis Leverandør Del"
#: src/components/wizards/OrderPartsWizard.tsx:219
#: src/tables/purchasing/SupplierPartTable.tsx:180
#: src/tables/purchasing/SupplierPartTable.tsx:258
msgid "Supplier part created"
-msgstr ""
+msgstr "Leverandør del oprettet"
#: src/components/wizards/OrderPartsWizard.tsx:247
msgid "Add to Purchase Order"
-msgstr ""
+msgstr "Føj til indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:259
msgid "Part added to purchase order"
-msgstr ""
+msgstr "Del tilføjet til indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:303
msgid "Select supplier part"
-msgstr ""
+msgstr "Vælg leverandørdel"
#: src/components/wizards/OrderPartsWizard.tsx:323
msgid "Copy supplier part number"
-msgstr ""
+msgstr "Kopier leverandørens del nummer"
#: src/components/wizards/OrderPartsWizard.tsx:326
msgid "New supplier part"
-msgstr ""
+msgstr "Ny leverandørdel"
#: src/components/wizards/OrderPartsWizard.tsx:350
msgid "Select purchase order"
-msgstr ""
+msgstr "Vælg indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:364
msgid "New purchase order"
-msgstr ""
+msgstr "Ny indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:420
msgid "Add to selected purchase order"
-msgstr ""
+msgstr "Tilføj til den valgte indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:432
#: src/components/wizards/OrderPartsWizard.tsx:545
msgid "No parts selected"
-msgstr ""
+msgstr "Ingen dele valgt"
#: src/components/wizards/OrderPartsWizard.tsx:433
msgid "No purchaseable parts selected"
-msgstr ""
+msgstr "Ingen dele, der kan købes, er valgt"
#: src/components/wizards/OrderPartsWizard.tsx:469
msgid "Parts Added"
-msgstr ""
+msgstr "Dele Tilføjet"
#: src/components/wizards/OrderPartsWizard.tsx:470
msgid "All selected parts added to a purchase order"
-msgstr ""
+msgstr "Alle valgte dele føjet til en indkøbsordre"
#: src/components/wizards/OrderPartsWizard.tsx:546
msgid "You must select at least one part to order"
-msgstr ""
+msgstr "Du skal vælge mindst en del for at bestille"
#: src/components/wizards/OrderPartsWizard.tsx:557
msgid "Supplier part is required"
-msgstr ""
+msgstr "Leverandør del er påkrævet"
#: src/components/wizards/OrderPartsWizard.tsx:561
msgid "Quantity is required"
-msgstr ""
+msgstr "Mængde er påkrævet"
#: src/components/wizards/OrderPartsWizard.tsx:574
msgid "Invalid part selection"
-msgstr ""
+msgstr "Ugyldig del valg"
#: src/components/wizards/OrderPartsWizard.tsx:576
msgid "Please correct the errors in the selected parts"
-msgstr ""
+msgstr "Ret venligst fejlene i de valgte dele"
#: src/components/wizards/OrderPartsWizard.tsx:587
#: src/tables/build/BuildLineTable.tsx:822
#: src/tables/part/PartTable.tsx:522
#: src/tables/sales/SalesOrderLineItemTable.tsx:370
msgid "Order Parts"
-msgstr ""
+msgstr "Bestil dele"
#: src/contexts/LanguageContext.tsx:22
#~ msgid "Arabic"
@@ -4038,76 +4051,80 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
-msgstr ""
+msgstr "Gå til InvenTree dashboard"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
-msgstr ""
+msgstr "Besøg dokumentationen for at lære mere om InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
-msgstr ""
-
-#: src/defaults/actions.tsx:64
-msgid "Server Information"
-msgstr ""
+msgstr "Om InvenTree org"
#: src/defaults/actions.tsx:65
+msgid "Server Information"
+msgstr "Server informationer"
+
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
-msgstr ""
+msgstr "Om denne InvenTree instans"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
-msgstr ""
+msgstr "Licensoplysninger"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
-msgstr ""
-
-#: src/defaults/actions.tsx:78
-msgid "Open Navigation"
-msgstr ""
+msgstr "Licenser for afhængigheder af tjenesten"
#: src/defaults/actions.tsx:79
+msgid "Open Navigation"
+msgstr "Åbn navigation"
+
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
-msgstr ""
+msgstr "Åben hoved navigationsmenuen"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
-msgstr ""
+msgstr "Scan en stregkode eller QR-kode"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
-msgstr ""
+msgstr "Gå til brugerindstillinger"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
-msgstr ""
+msgstr "Gå til indkøbsordrer"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
-msgstr ""
+msgstr "Gå til salgsordrer"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
-msgstr ""
+msgstr "Gå til returordrer"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
-msgstr ""
+msgstr "Gå til Bygge Ordrer"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
-msgstr ""
+msgstr "Gå til Systemindstillinger"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
-msgstr ""
+msgstr "Gå til Admin Center"
+
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "Administrer InvenTree plugins"
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
@@ -4181,35 +4198,35 @@ msgstr ""
#: src/defaults/links.tsx:93
msgid "API"
-msgstr ""
+msgstr "API"
#: src/defaults/links.tsx:96
msgid "InvenTree API documentation"
-msgstr ""
+msgstr "InvenTree API dokumentation"
#: src/defaults/links.tsx:100
msgid "Developer Manual"
-msgstr ""
+msgstr "Udvikler manual"
#: src/defaults/links.tsx:103
msgid "InvenTree developer manual"
-msgstr ""
+msgstr "InvenTree udvikler manual"
#: src/defaults/links.tsx:107
msgid "FAQ"
-msgstr ""
+msgstr "FAQ"
#: src/defaults/links.tsx:110
msgid "Frequently asked questions"
-msgstr ""
+msgstr "Ofte Stillede Spørgsmål"
#: src/defaults/links.tsx:114
msgid "GitHub Repository"
-msgstr ""
+msgstr "GitHub-repo"
#: src/defaults/links.tsx:117
msgid "InvenTree source code on GitHub"
-msgstr ""
+msgstr "InvenTree kildekode på GitHub"
#: src/defaults/links.tsx:117
#~ msgid "Licenses for packages used by InvenTree"
@@ -4218,7 +4235,7 @@ msgstr ""
#: src/defaults/links.tsx:127
#: src/defaults/links.tsx:168
msgid "System Information"
-msgstr ""
+msgstr "Systemoplysninger"
#: src/defaults/links.tsx:134
#~ msgid "Licenses"
@@ -4226,11 +4243,11 @@ msgstr ""
#: src/defaults/links.tsx:176
msgid "Licenses for dependencies of the InvenTree software"
-msgstr ""
+msgstr "Licenser afhængigheder af InvenTree software"
#: src/defaults/links.tsx:187
msgid "About the InvenTree Project"
-msgstr ""
+msgstr "Om InvenTree projektet"
#: src/defaults/menuItems.tsx:7
#~ msgid "Open sourcea"
@@ -4350,19 +4367,19 @@ msgstr ""
#: src/forms/BomForms.tsx:109
msgid "Substitute Part"
-msgstr ""
+msgstr "Erstat Del"
#: src/forms/BomForms.tsx:126
msgid "Edit BOM Substitutes"
-msgstr ""
+msgstr "Rediger stukliste erstatninger"
#: src/forms/BomForms.tsx:133
msgid "Add Substitute"
-msgstr ""
+msgstr "Tilføj Erstatning"
#: src/forms/BomForms.tsx:134
msgid "Substitute added"
-msgstr ""
+msgstr "Erstatning tilføjet"
#: src/forms/BuildForms.tsx:112
#: src/forms/BuildForms.tsx:217
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
-msgstr ""
+msgstr "Bygge Output"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
-msgstr ""
+msgstr "Antal til fuldførelse"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4414,13 +4431,13 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:327
#: src/tables/stock/StockTrackingTable.tsx:65
msgid "Status"
-msgstr ""
+msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
-msgstr ""
+msgstr "Færdiggøre Bygge Output"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,49 +4445,49 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
-msgstr ""
+msgstr "Antal til skrot"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
-msgstr ""
+msgstr "Skrot Byggeoutput"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
-msgstr ""
+msgstr "Valgte Byggeoutput vil blive fuldført, men markeret som skrot"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
-msgstr ""
+msgstr "Allokerede lagervarer vil blive forbrugt"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
-msgstr ""
+msgstr "Byggeoutput er blevet skrottet"
#: src/forms/BuildForms.tsx:470
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
-msgstr ""
+msgstr "Annuller Bygge Output"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
-msgstr ""
+msgstr "Allokere"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
-msgstr ""
+msgstr "Lagervarer tildelt"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,67 +4561,62 @@ msgstr ""
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
-msgstr ""
+msgstr "Fuldt forbrugte"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
-msgstr ""
+msgstr "Forbrugt"
#: src/forms/CommonForms.tsx:92
#: src/forms/PurchaseOrderForms.tsx:176
#: src/forms/ReturnOrderForms.tsx:138
#: src/forms/SalesOrderForms.tsx:185
msgid "Select project code for this line item"
-msgstr ""
+msgstr "Vælg projektkode for dette linjeelement"
#: src/forms/CompanyForms.tsx:150
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
#: src/tables/part/PartTable.tsx:325
msgid "Subscribed"
-msgstr ""
+msgstr "Abonner"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
-msgstr ""
-
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
+msgstr "Abonner på notifikationer for denne del"
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
-msgstr ""
+msgstr "Overordnet del kategori"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
-msgstr ""
+msgstr "Abonner på notifikationer for denne kategori"
#: src/forms/PurchaseOrderForms.tsx:421
#~ msgid "Assign Batch Code{0}"
@@ -4607,11 +4624,11 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:440
msgid "Assign Batch Code and Serial Numbers"
-msgstr ""
+msgstr "Tildel Batch kode og serienumre"
#: src/forms/PurchaseOrderForms.tsx:442
msgid "Assign Batch Code"
-msgstr ""
+msgstr "Tildel Batchkode"
#: src/forms/PurchaseOrderForms.tsx:444
#: src/forms/StockForms.tsx:428
@@ -4620,7 +4637,7 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:462
msgid "Choose Location"
-msgstr ""
+msgstr "Vælg lokation"
#: src/forms/PurchaseOrderForms.tsx:470
msgid "Item Destination selected"
@@ -4632,15 +4649,15 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:490
msgid "Received stock location selected"
-msgstr ""
+msgstr "Modtaget lager placering valgt"
#: src/forms/PurchaseOrderForms.tsx:498
msgid "Default location selected"
-msgstr ""
+msgstr "Standard lokation valgt"
#: src/forms/PurchaseOrderForms.tsx:559
msgid "Set Location"
-msgstr ""
+msgstr "Indstil Lokation"
#: src/forms/PurchaseOrderForms.tsx:566
#~ msgid "Serial numbers"
@@ -4648,7 +4665,7 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:576
msgid "Set Expiry Date"
-msgstr ""
+msgstr "Sæt Udløbsdato"
#: src/forms/PurchaseOrderForms.tsx:582
#~ msgid "Store at line item destination"
@@ -4657,17 +4674,17 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:584
#: src/forms/StockForms.tsx:693
msgid "Adjust Packaging"
-msgstr ""
+msgstr "Juster Emballering"
#: src/forms/PurchaseOrderForms.tsx:592
#: src/forms/StockForms.tsx:684
#: src/hooks/UseStockAdjustActions.tsx:148
msgid "Change Status"
-msgstr ""
+msgstr "Ændre Status"
#: src/forms/PurchaseOrderForms.tsx:598
msgid "Add Note"
-msgstr ""
+msgstr "Tilføj Note"
#: src/forms/PurchaseOrderForms.tsx:658
#~ msgid "Receive line items"
@@ -4675,7 +4692,7 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:662
msgid "Store at default location"
-msgstr ""
+msgstr "Gem på standard lokation"
#: src/forms/PurchaseOrderForms.tsx:677
msgid "Store at line item destination "
@@ -4690,36 +4707,36 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
msgid "Batch Code"
-msgstr ""
+msgstr "Batch kode"
#: src/forms/PurchaseOrderForms.tsx:714
msgid "Enter batch code for received items"
-msgstr ""
+msgstr "Indtast batch kode for modtagne varer"
#: src/forms/PurchaseOrderForms.tsx:727
#: src/forms/StockForms.tsx:218
msgid "Serial Numbers"
-msgstr ""
+msgstr "Serienummer"
#: src/forms/PurchaseOrderForms.tsx:728
msgid "Enter serial numbers for received items"
-msgstr ""
+msgstr "Indtast serienumre for modtagne elementer"
#: src/forms/PurchaseOrderForms.tsx:742
#: src/pages/stock/StockDetail.tsx:382
#: src/tables/stock/StockItemTable.tsx:294
msgid "Expiry Date"
-msgstr ""
+msgstr "Udløbsdato"
#: src/forms/PurchaseOrderForms.tsx:743
msgid "Enter an expiry date for received items"
-msgstr ""
+msgstr "Indtast en udløbsdato for modtagne vare"
#: src/forms/PurchaseOrderForms.tsx:755
#: src/forms/StockForms.tsx:728
@@ -4728,19 +4745,19 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:419
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227
msgid "Packaging"
-msgstr ""
+msgstr "Emballage"
#: src/forms/PurchaseOrderForms.tsx:779
#: src/pages/company/SupplierPartDetail.tsx:121
#: src/tables/ColumnRenderers.tsx:332
msgid "Note"
-msgstr ""
+msgstr "Note"
#: src/forms/PurchaseOrderForms.tsx:851
#: src/pages/company/SupplierPartDetail.tsx:139
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:49
msgid "SKU"
-msgstr ""
+msgstr "SKU"
#: src/forms/PurchaseOrderForms.tsx:852
#: src/tables/part/PartPurchaseOrdersTable.tsx:127
@@ -4748,55 +4765,55 @@ msgstr ""
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:283
#: src/tables/sales/ReturnOrderLineItemTable.tsx:171
msgid "Received"
-msgstr ""
+msgstr "Modtaget"
#: src/forms/PurchaseOrderForms.tsx:869
msgid "Receive Line Items"
-msgstr ""
+msgstr "Modtag linje element"
#: src/forms/PurchaseOrderForms.tsx:875
msgid "Items received"
-msgstr ""
+msgstr "Varer modtaget"
#: src/forms/ReturnOrderForms.tsx:257
msgid "Receive Items"
-msgstr ""
+msgstr "Modtag varer"
#: src/forms/ReturnOrderForms.tsx:264
msgid "Item received into stock"
-msgstr ""
+msgstr "Vare modtaget på lager"
#: src/forms/SalesOrderForms.tsx:208
#: src/forms/SalesOrderForms.tsx:210
#: src/tables/sales/SalesOrderShipmentTable.tsx:215
msgid "Check Shipment"
-msgstr ""
+msgstr "Tjek Forsendelse"
#: src/forms/SalesOrderForms.tsx:211
msgid "Marking the shipment as checked indicates that you have verified that all items included in this shipment are correct"
-msgstr ""
+msgstr "Markering af forsendelsen indikerer, at du har kontrolleret, at alle varer i denne forsendelse er korrekte"
#: src/forms/SalesOrderForms.tsx:221
msgid "Shipment marked as checked"
-msgstr ""
+msgstr "Forsendelse markeret som kontrolleret"
#: src/forms/SalesOrderForms.tsx:236
#: src/forms/SalesOrderForms.tsx:238
#: src/tables/sales/SalesOrderShipmentTable.tsx:228
msgid "Uncheck Shipment"
-msgstr ""
+msgstr "Fjern Markering Af Forsendelse"
#: src/forms/SalesOrderForms.tsx:239
msgid "Marking the shipment as unchecked indicates that the shipment requires further verification"
-msgstr ""
+msgstr "Mærkning af forsendelsen som ikke-kontrolleret viser, at forsendelsen kræver yderligere verifikation"
#: src/forms/SalesOrderForms.tsx:249
msgid "Shipment marked as unchecked"
-msgstr ""
+msgstr "Forsendelse markeret som ikke-kontrolleret"
#: src/forms/SalesOrderForms.tsx:480
msgid "Leave blank to use the order address"
-msgstr ""
+msgstr "Efterlad blank for at bruge ordreadressen"
#: src/forms/StockForms.tsx:110
#~ msgid "Create Stock Item"
@@ -4808,201 +4825,201 @@ msgstr ""
#: src/forms/StockForms.tsx:196
msgid "Add given quantity as packs instead of individual items"
-msgstr ""
+msgstr "Tilføj givet antal som pakker i stedet for individuelle elementer"
#: src/forms/StockForms.tsx:210
msgid "Enter initial quantity for this stock item"
-msgstr ""
+msgstr "Angiv første antal for denne lagervare"
#: src/forms/StockForms.tsx:220
msgid "Enter serial numbers for new stock (or leave blank)"
-msgstr ""
+msgstr "Indtast serienumre for nyt lager (eller efterlad blank)"
#: src/forms/StockForms.tsx:240
msgid "Stock Status"
-msgstr ""
+msgstr "Lager Status"
#: src/forms/StockForms.tsx:317
#: src/pages/stock/StockDetail.tsx:686
#: src/tables/stock/StockItemTable.tsx:525
#: src/tables/stock/StockItemTable.tsx:572
msgid "Add Stock Item"
-msgstr ""
+msgstr "Tilføj Lagervare"
#: src/forms/StockForms.tsx:361
msgid "Select the part to install"
-msgstr ""
+msgstr "Vælg den del, der skal installeres"
#: src/forms/StockForms.tsx:487
msgid "Confirm Stock Transfer"
-msgstr ""
+msgstr "Bekræft Lager Overførsel"
#: src/forms/StockForms.tsx:672
msgid "Move to default location"
-msgstr ""
+msgstr "Flyt til standard lokation"
#: src/forms/StockForms.tsx:795
msgid "Move"
-msgstr ""
+msgstr "Flyt"
#: src/forms/StockForms.tsx:842
msgid "Return"
-msgstr ""
+msgstr "Retur"
#: src/forms/StockForms.tsx:979
#: src/pages/Index/Scan.tsx:182
msgid "Count"
-msgstr ""
+msgstr "Antal"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
-msgstr ""
+msgstr "Tilføj Lagerbeholdning"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
-msgstr ""
+msgstr "Lager tilføjet"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
-msgstr ""
+msgstr "Forøg antallet af valgte lagervarer med et givet beløb."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
-msgstr ""
+msgstr "Fjern Lagervarer"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
-msgstr ""
+msgstr "Lager fjernet"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
-msgstr ""
+msgstr "Reducer antallet af de valgte lagervarer med et givet beløb."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
-msgstr ""
+msgstr "Overfør Lager"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
-msgstr ""
+msgstr "Lager overført"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
-msgstr ""
+msgstr "Overfør valgte elementer til den angivne lokation."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
-msgstr ""
+msgstr "Retur Lager"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
-msgstr ""
+msgstr "Lager returneret"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
-msgstr ""
+msgstr "Returner valgte elementer til lager, til den angivne lokation."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
-msgstr ""
+msgstr "Tæl Lager"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
-msgstr ""
+msgstr "Lager er optalt"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
-msgstr ""
+msgstr "Tæl de valgte lagervarer, og juster mængden i overensstemmelse."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
-msgstr ""
+msgstr "Ændr Lagerstatus"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
-msgstr ""
+msgstr "Lagerstatus ændret"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
-msgstr ""
+msgstr "Ændre status for de valgte lagervarer."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
-msgstr ""
-
-#: src/forms/StockForms.tsx:1353
-msgid "Stock merged"
-msgstr ""
-
-#: src/forms/StockForms.tsx:1355
-msgid "Merge Stock Items"
-msgstr ""
-
-#: src/forms/StockForms.tsx:1357
-msgid "Merge operation cannot be reversed"
-msgstr ""
-
-#: src/forms/StockForms.tsx:1358
-msgid "Tracking information may be lost when merging items"
-msgstr ""
-
-#: src/forms/StockForms.tsx:1359
-msgid "Supplier information may be lost when merging items"
-msgstr ""
+msgstr "Flet Lager"
#: src/forms/StockForms.tsx:1377
-msgid "Assign Stock to Customer"
-msgstr ""
+msgid "Stock merged"
+msgstr "Lager sammenlagt"
-#: src/forms/StockForms.tsx:1378
-msgid "Stock assigned to customer"
-msgstr ""
+#: src/forms/StockForms.tsx:1379
+msgid "Merge Stock Items"
+msgstr "Flet Lagervarer"
-#: src/forms/StockForms.tsx:1388
-msgid "Delete Stock Items"
-msgstr ""
+#: src/forms/StockForms.tsx:1381
+msgid "Merge operation cannot be reversed"
+msgstr "Fletningshandlingen kan ikke fortrydes"
-#: src/forms/StockForms.tsx:1389
-msgid "Stock deleted"
-msgstr ""
+#: src/forms/StockForms.tsx:1382
+msgid "Tracking information may be lost when merging items"
+msgstr "Sporingsoplysninger kan gå tabt ved sammenlægning af elementer"
-#: src/forms/StockForms.tsx:1392
-msgid "This operation will permanently delete the selected stock items."
-msgstr ""
+#: src/forms/StockForms.tsx:1383
+msgid "Supplier information may be lost when merging items"
+msgstr "Leverandøroplysninger kan gå tabt ved sammenlægning af elementer"
#: src/forms/StockForms.tsx:1401
+msgid "Assign Stock to Customer"
+msgstr "Tildel lager til kunde"
+
+#: src/forms/StockForms.tsx:1402
+msgid "Stock assigned to customer"
+msgstr "Lager tildelt kunden"
+
+#: src/forms/StockForms.tsx:1412
+msgid "Delete Stock Items"
+msgstr "Slet Lagervare"
+
+#: src/forms/StockForms.tsx:1413
+msgid "Stock deleted"
+msgstr "Lagervare slettet"
+
+#: src/forms/StockForms.tsx:1416
+msgid "This operation will permanently delete the selected stock items."
+msgstr "Denne handling vil permanent slette de valgte lagervarer."
+
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
-msgstr ""
+msgstr "Overordnet lager lokation"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
-msgstr ""
+msgstr "Find Serienummer"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
-msgstr ""
+msgstr "Ingen matchende varer"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
-msgstr ""
+msgstr "Flere matchende varer"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
-msgstr ""
+msgstr "Ugyldigt svar fra server"
#: src/forms/selectionListFields.tsx:95
msgid "Entries"
-msgstr ""
+msgstr "Poster"
#: src/forms/selectionListFields.tsx:96
msgid "List of entries to choose from"
-msgstr ""
+msgstr "Liste over poster at vælge imellem"
#: src/forms/selectionListFields.tsx:100
#: src/pages/part/PartStockHistoryDetail.tsx:59
@@ -5012,35 +5029,35 @@ msgstr ""
#: src/tables/part/PartTestResultTable.tsx:206
#: src/tables/stock/StockItemTestResultTable.tsx:207
msgid "Value"
-msgstr ""
+msgstr "Værdi"
#: src/forms/selectionListFields.tsx:101
msgid "Label"
-msgstr ""
+msgstr "Label"
#: src/functions/api.tsx:33
msgid "Bad request"
-msgstr ""
+msgstr "Dårlig anmodning"
#: src/functions/api.tsx:36
msgid "Unauthorized"
-msgstr ""
+msgstr "Uautoriseret"
#: src/functions/api.tsx:39
msgid "Forbidden"
-msgstr ""
+msgstr "Forbudt"
#: src/functions/api.tsx:42
msgid "Not found"
-msgstr ""
+msgstr "Ikke fundet"
#: src/functions/api.tsx:45
msgid "Method not allowed"
-msgstr ""
+msgstr "Metode ikke tilladt"
#: src/functions/api.tsx:48
msgid "Internal server error"
-msgstr ""
+msgstr "Intern serverfejl"
#: src/functions/auth.tsx:34
#~ msgid "Error fetching token from server."
@@ -5062,101 +5079,112 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Logget af"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Intet svar fra server."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
-msgstr ""
+msgstr "Multifaktorgodkendelse Login succesfuld"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
-msgstr ""
+msgstr "Multifaktorgodkendelse detaljer blev automatisk givet i browseren"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
-msgstr ""
+msgstr "Du er nu logget af"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
-msgstr ""
+msgstr "Sprog ændret"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
-msgstr ""
+msgstr "Dit aktive sprog er blevet ændret til det der er sat i din profil"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
-msgstr ""
+msgstr "Tema ændret"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
-msgstr ""
+msgstr "Dit aktive tema er blevet ændret til det der er sat i din profil"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
-msgstr ""
+msgstr "Tjek din indbakke for et nulstillingslink. Dette virker kun, hvis du har en konto. Tjek også spam."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
-msgstr ""
+msgstr "Nulstilling fejlede"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Allerede logget ind"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Der er en konfliktfyldt session på serveren for denne browser. Log ud af det først."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
-msgstr ""
+msgstr "Logget ind"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
-msgstr ""
+msgstr "Logget ind"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
+msgstr "Kunne ikke oprette Multifaktorgodkendelse"
+
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
-msgstr ""
+msgstr "Adgangskode sat"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
-msgstr ""
-
-#: src/functions/auth.tsx:634
-msgid "Password could not be changed"
-msgstr ""
-
-#: src/functions/auth.tsx:652
-msgid "The two password fields didn’t match"
-msgstr ""
+msgstr "Adgangskoden blev oprettet. Du kan nu logge ind med din nye adgangskode"
#: src/functions/auth.tsx:668
+msgid "Password could not be changed"
+msgstr "Adgangskoden kunne ikke ændres"
+
+#: src/functions/auth.tsx:686
+msgid "The two password fields didn’t match"
+msgstr "De to adgangskodefelter matcher ikke"
+
+#: src/functions/auth.tsx:702
msgid "Password Changed"
-msgstr ""
+msgstr "Adgangskode ændret"
#: src/functions/forms.tsx:50
#~ msgid "Form method not provided"
@@ -5176,11 +5204,11 @@ msgstr ""
#: src/functions/notifications.tsx:13
msgid "Not implemented"
-msgstr ""
+msgstr "Ikke implementeret"
#: src/functions/notifications.tsx:14
msgid "This feature is not yet implemented"
-msgstr ""
+msgstr "Denne funktion er endnu ikke implementeret"
#: src/functions/notifications.tsx:24
#~ msgid "Permission denied"
@@ -5188,68 +5216,68 @@ msgstr ""
#: src/functions/notifications.tsx:26
msgid "You do not have permission to perform this action"
-msgstr ""
+msgstr "Du har ikke tilladelse til at udføre denne handling"
#: src/functions/notifications.tsx:37
msgid "Invalid Return Code"
-msgstr ""
+msgstr "Ugyldig Svar Kode"
#: src/functions/notifications.tsx:38
msgid "Server returned status {returnCode}"
-msgstr ""
+msgstr "Server returnerede status {returnCode}"
#: src/functions/notifications.tsx:48
msgid "Timeout"
-msgstr ""
+msgstr "Timeout"
#: src/functions/notifications.tsx:49
msgid "The request timed out"
-msgstr ""
+msgstr "Anmodningen udløb"
#: src/hooks/UseDataExport.tsx:34
msgid "Exporting Data"
-msgstr ""
+msgstr "Eksporterer data"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
-msgstr ""
+msgstr "Eksporter Data"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
-msgstr ""
+msgstr "Eksport"
#: src/hooks/UseDataOutput.tsx:57
#: src/hooks/UseDataOutput.tsx:111
msgid "Process failed"
-msgstr ""
+msgstr "Proces fejlede"
#: src/hooks/UseDataOutput.tsx:75
msgid "Process completed successfully"
-msgstr ""
+msgstr "Processen er gennemført"
#: src/hooks/UseForm.tsx:96
msgid "Item Created"
-msgstr ""
+msgstr "Emne oprettet"
#: src/hooks/UseForm.tsx:116
msgid "Item Updated"
-msgstr ""
+msgstr "Element opdateret"
#: src/hooks/UseForm.tsx:137
msgid "Items Updated"
-msgstr ""
+msgstr "Element opdateret"
#: src/hooks/UseForm.tsx:139
msgid "Update multiple items"
-msgstr ""
+msgstr "Opdater flere elementer"
#: src/hooks/UseForm.tsx:169
msgid "Item Deleted"
-msgstr ""
+msgstr "Element slettet"
#: src/hooks/UseForm.tsx:173
msgid "Are you sure you want to delete this item?"
-msgstr ""
+msgstr "Er du sikker på, at du vil slette dette element?"
#: src/hooks/UsePlaceholder.tsx:59
#~ msgid "Latest serial number"
@@ -5257,23 +5285,23 @@ msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:100
msgid "Count selected stock items"
-msgstr ""
+msgstr "Tæl valgte lagervarer"
#: src/hooks/UseStockAdjustActions.tsx:110
msgid "Add to selected stock items"
-msgstr ""
+msgstr "Tilføj til valgte lagervarer"
#: src/hooks/UseStockAdjustActions.tsx:120
msgid "Remove from selected stock items"
-msgstr ""
+msgstr "Fjern fra valgte lagervarer"
#: src/hooks/UseStockAdjustActions.tsx:130
msgid "Transfer selected stock items"
-msgstr ""
+msgstr "Overfør valgte lagervarer"
#: src/hooks/UseStockAdjustActions.tsx:140
msgid "Merge selected stock items"
-msgstr ""
+msgstr "Sammenflet valgte lagervarer"
#: src/hooks/UseStockAdjustActions.tsx:150
msgid "Change status of selected stock items"
@@ -5281,69 +5309,69 @@ msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:158
msgid "Assign Stock"
-msgstr ""
+msgstr "Tildel Lager"
#: src/hooks/UseStockAdjustActions.tsx:160
msgid "Assign selected stock items to a customer"
-msgstr ""
+msgstr "Tildel udvalgte lagervarer til en kunde"
#: src/hooks/UseStockAdjustActions.tsx:170
msgid "Return selected items into stock"
-msgstr ""
+msgstr "Returner valgte varer til lager"
#: src/hooks/UseStockAdjustActions.tsx:178
msgid "Delete Stock"
-msgstr ""
+msgstr "Slet Lager"
#: src/hooks/UseStockAdjustActions.tsx:180
msgid "Delete selected stock items"
-msgstr ""
+msgstr "Slet valgte lagervarer"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
-msgstr ""
+msgstr "Lager Handlinger"
#: src/pages/Auth/ChangePassword.tsx:32
#: src/pages/Auth/Reset.tsx:14
msgid "Reset Password"
-msgstr ""
+msgstr "Nulstil adgangskode"
#: src/pages/Auth/ChangePassword.tsx:46
msgid "Current Password"
-msgstr ""
+msgstr "Nuværende Adgangskode"
#: src/pages/Auth/ChangePassword.tsx:47
msgid "Enter your current password"
-msgstr ""
+msgstr "Indtast din nuværende adgangskode"
#: src/pages/Auth/ChangePassword.tsx:53
msgid "New Password"
-msgstr ""
+msgstr "Ny adgangskode"
#: src/pages/Auth/ChangePassword.tsx:54
msgid "Enter your new password"
-msgstr ""
+msgstr "Indtast din nye adgangskode"
#: src/pages/Auth/ChangePassword.tsx:60
msgid "Confirm New Password"
-msgstr ""
+msgstr "Bekræft ny adgangskode"
#: src/pages/Auth/ChangePassword.tsx:61
msgid "Confirm your new password"
-msgstr ""
+msgstr "Bekræft din nye adgangskode"
#: src/pages/Auth/ChangePassword.tsx:80
msgid "Confirm"
-msgstr ""
+msgstr "Bekræfte"
#: src/pages/Auth/Layout.tsx:59
msgid "Log off"
-msgstr ""
+msgstr "Log af"
#: src/pages/Auth/LoggedIn.tsx:19
msgid "Checking if you are already logged in"
-msgstr ""
+msgstr "Tjekker om du allerede er logget ind"
#: src/pages/Auth/Login.tsx:32
msgid "No selection"
@@ -5359,15 +5387,15 @@ msgstr ""
#: src/pages/Auth/Login.tsx:100
msgid "Login"
-msgstr ""
+msgstr "Log ind"
#: src/pages/Auth/Login.tsx:106
msgid "Logging you in"
-msgstr ""
+msgstr "Logger dig ind"
#: src/pages/Auth/Login.tsx:113
msgid "Don't have an account?"
-msgstr ""
+msgstr "Har du ikke en konto?"
#: src/pages/Auth/Logout.tsx:22
#~ msgid "Logging out"
@@ -5383,42 +5411,42 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
-msgstr ""
+msgstr "Multifaktorgodkendelse"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
-msgstr ""
+msgstr "TOTP Kode"
#: src/pages/Auth/MFA.tsx:35
msgid "Enter one of your codes: {mfa_types}"
-msgstr ""
+msgstr "Indtast en af dine koder: {mfa_types}"
#: src/pages/Auth/MFA.tsx:42
msgid "Remember this device"
-msgstr ""
+msgstr "Husk denne enhed"
#: src/pages/Auth/MFA.tsx:44
msgid "If enabled, you will not be asked for MFA on this device for 30 days."
-msgstr ""
+msgstr "Hvis aktiveret, vil du ikke blive spurgt om multifaktorgodkendelse på denne enhed i 30 dage."
#: src/pages/Auth/MFA.tsx:53
msgid "Log in"
-msgstr ""
+msgstr "Log Ind"
#: src/pages/Auth/MFASetup.tsx:23
msgid "MFA Setup Required"
-msgstr ""
+msgstr "Multifaktorgodkendelse Opsætning Påkrævet"
#: src/pages/Auth/MFASetup.tsx:34
msgid "Add TOTP"
-msgstr ""
+msgstr "Tilføj TOTP"
#: src/pages/Auth/Register.tsx:23
msgid "Go back to login"
-msgstr ""
+msgstr "Tilbage til log ind"
#: src/pages/Auth/Reset.tsx:41
#: src/pages/Auth/Set-Password.tsx:112
@@ -5428,11 +5456,11 @@ msgstr ""
#: src/pages/Auth/ResetPassword.tsx:22
#: src/pages/Auth/VerifyEmail.tsx:19
msgid "Key invalid"
-msgstr ""
+msgstr "Ugyldig nøgle"
#: src/pages/Auth/ResetPassword.tsx:23
msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link."
-msgstr ""
+msgstr "Du skal angive en gyldig nøgle for at angive en ny adgangskode. Tjek din indbakke for et nulstillingslink."
#: src/pages/Auth/ResetPassword.tsx:30
#~ msgid "Token invalid"
@@ -5440,7 +5468,7 @@ msgstr ""
#: src/pages/Auth/ResetPassword.tsx:31
msgid "Set new password"
-msgstr ""
+msgstr "Indtast ny adgangskode"
#: src/pages/Auth/ResetPassword.tsx:31
#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link."
@@ -5448,11 +5476,11 @@ msgstr ""
#: src/pages/Auth/ResetPassword.tsx:35
msgid "The desired new password"
-msgstr ""
+msgstr "Det ønskede nye adgangskode"
#: src/pages/Auth/ResetPassword.tsx:44
msgid "Send Password"
-msgstr ""
+msgstr "Send adgangskode"
#: src/pages/Auth/Set-Password.tsx:49
#~ msgid "No token provided"
@@ -5464,24 +5492,24 @@ msgstr ""
#: src/pages/Auth/VerifyEmail.tsx:20
msgid "You need to provide a valid key."
-msgstr ""
+msgstr "Du skal angive en gyldig nøgle."
#: src/pages/Auth/VerifyEmail.tsx:28
msgid "Verify Email"
-msgstr ""
+msgstr "Bekræft din E-mail adresse"
#: src/pages/Auth/VerifyEmail.tsx:30
msgid "Verify"
-msgstr ""
+msgstr "Bekræft"
#. placeholder {0}: error.statusText
#: src/pages/ErrorPage.tsx:16
msgid "Error: {0}"
-msgstr ""
+msgstr "Fejl: {0}"
#: src/pages/ErrorPage.tsx:23
msgid "An unexpected error has occurred"
-msgstr ""
+msgstr "En uventet fejl opstod"
#: src/pages/ErrorPage.tsx:28
#~ msgid "Sorry, an unexpected error has occurred."
@@ -5641,11 +5669,11 @@ msgstr ""
#: src/pages/Index/Scan.tsx:65
msgid "Item already scanned"
-msgstr ""
+msgstr "Elementet er allerede scannet"
#: src/pages/Index/Scan.tsx:82
msgid "API Error"
-msgstr ""
+msgstr "API fejl"
#: src/pages/Index/Scan.tsx:83
msgid "Failed to fetch instance data"
@@ -5653,15 +5681,15 @@ msgstr ""
#: src/pages/Index/Scan.tsx:130
msgid "Scan Error"
-msgstr ""
+msgstr "Scanningsfejl"
#: src/pages/Index/Scan.tsx:162
msgid "Selected elements are not known"
-msgstr ""
+msgstr "Valgte elementer er ikke kendte"
#: src/pages/Index/Scan.tsx:169
msgid "Multiple object types selected"
-msgstr ""
+msgstr "Flere objekter typer valgt"
#: src/pages/Index/Scan.tsx:175
#~ msgid "Actions ..."
@@ -5674,19 +5702,19 @@ msgstr ""
#: src/pages/Index/Scan.tsx:194
#: src/pages/Index/Scan.tsx:198
msgid "Barcode Scanning"
-msgstr ""
+msgstr "Stregkode Scanninger"
#: src/pages/Index/Scan.tsx:207
msgid "Barcode Input"
-msgstr ""
+msgstr "Stregkode input"
#: src/pages/Index/Scan.tsx:214
msgid "Action"
-msgstr ""
+msgstr "Handling"
#: src/pages/Index/Scan.tsx:217
msgid "No Items Selected"
-msgstr ""
+msgstr "Ingen Elementer Valgt"
#: src/pages/Index/Scan.tsx:217
#~ msgid "Manual input"
@@ -5694,7 +5722,7 @@ msgstr ""
#: src/pages/Index/Scan.tsx:218
msgid "Scan and select items to perform actions"
-msgstr ""
+msgstr "Skan og vælg elementer til at udføre handlinger"
#: src/pages/Index/Scan.tsx:218
#~ msgid "Image Barcode"
@@ -5703,11 +5731,11 @@ msgstr ""
#. placeholder {0}: selection.length
#: src/pages/Index/Scan.tsx:223
msgid "{0} items selected"
-msgstr ""
+msgstr "{0} elementer valgt"
#: src/pages/Index/Scan.tsx:235
msgid "Scanned Items"
-msgstr ""
+msgstr "Scannede Elementer"
#: src/pages/Index/Scan.tsx:276
#~ msgid "Actions for {0}"
@@ -5809,7 +5837,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:33
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:113
msgid "Edit Account Information"
-msgstr ""
+msgstr "Rediger Konto Information"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:34
#~ msgid "User details updated"
@@ -5817,7 +5845,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:37
msgid "Account details updated"
-msgstr ""
+msgstr "Konto detaljer opdateret"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:46
#~ msgid "User Actions"
@@ -5830,7 +5858,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:55
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:136
msgid "Edit Profile Information"
-msgstr ""
+msgstr "Rediger Profil Information"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:55
#~ msgid "Last name"
@@ -5846,7 +5874,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:59
msgid "Profile details updated"
-msgstr ""
+msgstr "Profil detaljer opdateret"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:61
#~ msgid "Last name: {0}"
@@ -5855,12 +5883,12 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:65
#: src/pages/core/UserDetail.tsx:55
msgid "First Name"
-msgstr ""
+msgstr "Fornavn"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:66
#: src/pages/core/UserDetail.tsx:63
msgid "Last Name"
-msgstr ""
+msgstr "Efternavn"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:67
#~ msgid "First name:"
@@ -5872,399 +5900,395 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72
msgid "Staff Access"
-msgstr ""
+msgstr "Personale Adgang"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:85
#: src/pages/core/UserDetail.tsx:119
#: src/tables/settings/CustomStateTable.tsx:101
msgid "Display Name"
-msgstr ""
+msgstr "Vis Navn"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:86
#: src/pages/core/UserDetail.tsx:127
msgid "Position"
-msgstr ""
+msgstr "Stilling"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
-msgstr ""
+msgstr "Type"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:91
#: src/pages/core/UserDetail.tsx:143
msgid "Organisation"
-msgstr ""
+msgstr "Organisation"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:92
msgid "Primary Group"
-msgstr ""
+msgstr "Primær Gruppe"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:104
msgid "Account Details"
-msgstr ""
+msgstr "Kontodetaljer"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:107
msgid "Account Actions"
-msgstr ""
+msgstr "Kontohandlinger"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:111
msgid "Edit Account"
-msgstr ""
+msgstr "Rediger Konto"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:117
#: src/tables/settings/UserTable.tsx:322
msgid "Change Password"
-msgstr ""
+msgstr "Ændre Adgangskode"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:119
msgid "Change User Password"
-msgstr ""
+msgstr "Ændre Brugeradgangskode"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:131
msgid "Profile Details"
-msgstr ""
+msgstr "Profil Detaljer"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:134
msgid "Edit Profile"
-msgstr ""
+msgstr "Rediger Profil"
#. placeholder {0}: item.label
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:153
msgid "{0}"
-msgstr ""
+msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
-msgstr ""
+msgstr "Genautentificer Gennemført"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
-msgstr ""
+msgstr "Du er blevet genautentificer med succes."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
-msgstr ""
+msgstr "Fejl under genautentificer"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
-msgstr ""
+msgstr "Genautentificer Mislykkedes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
-msgid "Reauthenticate"
-msgstr ""
+msgstr "Genautentificer mislykkedes"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
+msgid "Reauthenticate"
+msgstr "Genautentificer"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
-msgstr ""
+msgstr "Genautentificering kræves for at fortsætte."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
-msgstr ""
+msgstr "Indtast din adgangskode"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
-msgstr ""
+msgstr "Indtast en af dine TOTP koder"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
-msgstr ""
+msgstr "WebAuthn legitimationsoplysninger fjernet"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
-msgstr ""
+msgstr "WebAuthn legitimationsoplysninger blev fjernet."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
-msgstr ""
+msgstr "Fejl ved fjernelse af WebAuthn legitimationsoplysninger"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
-msgstr ""
+msgstr "Fjern WebAuthn legitimationsoplysninger"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
-msgstr ""
+msgstr "Bekræft sletning"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
-msgstr ""
+msgstr "Bekræft fjernelse af webauth legitimationsoplysninger"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
-msgstr ""
+msgstr "TOTP Fjernet"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
-msgstr ""
+msgstr "TOTP token blev fjernet."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
-msgstr ""
+msgstr "Fejl ved fjernelse af TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
-msgstr ""
+msgstr "Fjern TOTP Token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
-msgstr ""
+msgstr "Bekræft fjernelse af TOTP kode"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
-msgstr ""
+msgstr "TOTP Allerede Registreret"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
-msgstr ""
+msgstr "En TOTP token er allerede registreret for denne konto."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
-msgstr ""
+msgstr "Fejl Ved Hentning Af TOTP Registrering"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
-msgstr ""
+msgstr "En uventet fejl opstod under hentning af TOTP registreringsdata."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
-msgstr ""
+msgstr "TOTP Registrerede"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
-msgstr ""
+msgstr "TOTP token registreret."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
-msgstr ""
+msgstr "Fejl ved registrering af TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
-msgstr ""
+msgstr "Registrer TOTP Token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
-msgid "Recovery Codes"
-msgstr ""
+msgstr "Fejl ved hentning af gendannelseskoder"
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
+msgid "Recovery Codes"
+msgstr "Gendannelseskoder"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
-msgstr ""
+msgstr "Følgende engangskoder til gendannelse er tilgængelige til brug"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
-msgid "No Unused Codes"
-msgstr ""
+msgstr "Kopier gendannelseskoder til udklipsholder"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+msgid "No Unused Codes"
+msgstr "Ingen Ubrugte Koder"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
-msgid "WebAuthn Registered"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
-msgid "WebAuthn credential registered successfully"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
-msgid "Error registering WebAuthn credential"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
-msgid "WebAuthn Registration Failed"
-msgstr ""
+msgstr "Der er ingen tilgængelige gendannelseskoder"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+msgid "WebAuthn Registered"
+msgstr "WebAuthn Registreret"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
+msgid "WebAuthn credential registered successfully"
+msgstr "WebAuthn legitimationsoplysninger registreret"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
+msgid "Error registering WebAuthn credential"
+msgstr "Fejl ved registrering af WebAuthn legitimationsoplysninger"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
+msgid "WebAuthn Registration Failed"
+msgstr "WebAuthn Registrering Fejlede"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
-msgstr ""
+msgstr "Kunne ikke registrere WebAuthn legitimationsoplysninger"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
-msgid "TOTP"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
-msgid "Time-based One-Time Password"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
-msgid "One-Time pre-generated recovery codes"
-msgstr ""
+msgstr "Fejl ved hentning af WebAuthn registrering"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
-msgid "WebAuthn"
-msgstr ""
+msgid "TOTP"
+msgstr "TOTP"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+msgid "Time-based One-Time Password"
+msgstr "Tidsbaseret Engangskodeord"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
+msgid "One-Time pre-generated recovery codes"
+msgstr "Engangs prægenererede gendannelseskoder"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
+msgid "WebAuthn"
+msgstr "WebAuthn"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
-msgid "Last used at"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
-msgid "Created at"
-msgstr ""
+msgstr "Webgodkendelse (WebAuthn) er en webstandard til sikker godkendelse"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+msgid "Last used at"
+msgstr "Sidst anvendt den"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
+msgid "Created at"
+msgstr "Oprettet den"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
-msgstr ""
+msgstr "Ikke konfigureret"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
-msgstr ""
+msgstr "Ingen multi-faktor tokens konfigureret for denne konto"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
-msgstr ""
+msgstr "Registrer Autentificerings Metode"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
-msgstr ""
+msgstr "Ingen Multifaktorgodkendelse Metoder Tilgængelige"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
-msgstr ""
+msgstr "Der er ingen Multifaktorgodkendelse metoder til rådighed til konfiguration"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:27
msgid "Secret"
-msgstr ""
+msgstr "Hemmelighed"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:40
msgid "One-Time Password"
-msgstr ""
+msgstr "Engangskodeord"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:41
msgid "Enter the TOTP code to ensure it registered correctly"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
+msgstr "Indtast TOTP koden for at sikre at den er registreret korrekt"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E-mail adresser"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr "Single Sign On"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Ikke aktiveret"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Single Sign On er ikke aktiveret for denne server "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
-msgid "Access Tokens"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
-msgid "Session Information"
-msgstr ""
+msgid "Access Tokens"
+msgstr "Adgangs Token"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
+msgid "Session Information"
+msgstr "Session Information"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
#: src/tables/settings/ErrorTable.tsx:59
msgid "Timestamp"
-msgstr ""
+msgstr "Tidsstempel"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
-msgstr ""
+msgstr "Metode"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
-msgstr ""
+msgstr "Fejl under opdatering af e-mail"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
-msgstr ""
+msgstr "Der er i øjeblikket ingen e-mailadresser registreret."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
-msgstr ""
+msgstr "Følgende e-mailadresser er knyttet til din konto:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
-msgstr ""
+msgstr "Primær"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
-msgstr ""
+msgstr "Verificeret"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
-msgstr ""
+msgstr "Ikke verificeret"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
+msgstr "Sæt som primær"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr ""
+msgid "Re-send Verification"
+msgstr "Gensend Verifikation"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Tilføj e-mailadresse"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-mail adresse"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,25 +6298,29 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Fejl ved tilføjelse af e-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Tilføj E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
-msgstr ""
+msgstr "Der er ingen udbydere forbundet til denne konto."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
-msgstr ""
+msgstr "Du kan logge ind på din konto ved hjælp af en af følgende udbydere"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
-msgstr ""
+msgstr "Fjern Udbyderlink"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:556
#~ msgid "Unused Codes"
@@ -6337,7 +6365,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:61
msgid "Display Settings"
-msgstr ""
+msgstr "Skærmindstillinger"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65
#~ msgid "bars"
@@ -6349,7 +6377,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:67
msgid "Language"
-msgstr ""
+msgstr "Sprog"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:67
#~ msgid "dots"
@@ -6357,7 +6385,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:78
msgid "Use pseudo language"
-msgstr ""
+msgstr "Brug pseudosprog"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:81
#~ msgid "Theme"
@@ -6365,7 +6393,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:85
msgid "Color Mode"
-msgstr ""
+msgstr "Farve Tilstand"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:87
#~ msgid "Primary color"
@@ -6373,19 +6401,19 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:96
msgid "Highlight color"
-msgstr ""
+msgstr "Fremhæv farver"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:110
msgid "Example"
-msgstr ""
+msgstr "Eksempel"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:116
msgid "White color"
-msgstr ""
+msgstr "Hvid farve"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:139
msgid "Black color"
-msgstr ""
+msgstr "Sort farve"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:162
msgid "Border Radius"
@@ -6397,15 +6425,15 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:185
msgid "Bars"
-msgstr ""
+msgstr "Bjælker"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:186
msgid "Oval"
-msgstr ""
+msgstr "Oval"
#: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:187
msgid "Dots"
-msgstr ""
+msgstr "Prikker"
#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:93
#~ msgid "Reauthentication"
@@ -6422,23 +6450,23 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:28
#: src/tables/ColumnRenderers.tsx:538
msgid "Currency"
-msgstr ""
+msgstr "Valuta"
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:33
msgid "Rate"
-msgstr ""
+msgstr "Kurs"
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:46
msgid "Exchange rates updated"
-msgstr ""
+msgstr "Valutakurser opdateret"
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:53
msgid "Exchange rate update error"
-msgstr ""
+msgstr "Opdateringsfejl for valutakurser"
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:63
msgid "Refresh currency exchange rates"
-msgstr ""
+msgstr "Opdater valutakurser"
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:99
msgid "Last fetched"
@@ -6446,11 +6474,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/CurrencyManagementPanel.tsx:100
msgid "Base currency"
-msgstr ""
+msgstr "Basisvaluta"
#: src/pages/Index/Settings/AdminCenter/EmailManagementPanel.tsx:13
msgid "Email Messages"
-msgstr ""
+msgstr "E-Mail Beskeder"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:22
#~ msgid "Active Alerts"
@@ -6462,27 +6490,27 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:36
msgid "System Status"
-msgstr ""
+msgstr "System Status"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:47
msgid "Admin Center Information"
-msgstr ""
+msgstr "Admin Center Information"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:53
msgid "The home panel (and the whole Admin Center) is a new feature starting with the new UI and was previously (before 1.0) not available."
-msgstr ""
+msgstr "Hjemmepanelet (og Admin Center) er en ny funktion, der starter med den nye brugergrænseflade og var tidligere (før 1.0) ikke tilgængelig."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:60
msgid "The admin center provides a centralized location for all administration functionality and is meant to replace all interaction with the (django) backend admin interface."
-msgstr ""
+msgstr "Admin centret giver en centraliseret placering for alle admin funktionalitet og er beregnet til at erstatte al interaktion med (django) backend admin interface."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:67
msgid "Please open feature requests (after checking the tracker) for any existing backend admin functionality you are missing in this UI. The backend admin interface should be used carefully and seldom."
-msgstr ""
+msgstr "Åbn venligst funktionsanmodninger (efter at have tjekket trackeren) for eventuelle eksisterende backend administrationsfunktioner, som du mangler i denne brugergrænseflade. Backend administrationsgrænsefladen bør bruges forsigtigt og sjældent."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:85
msgid "Quick Actions"
-msgstr ""
+msgstr "Hurtige Handlinger"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:107
#~ msgid "User Management"
@@ -6490,11 +6518,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:115
msgid "Home"
-msgstr ""
+msgstr "Hjem"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:122
msgid "Users / Access"
-msgstr ""
+msgstr "Brugere / Adgang"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:127
#~ msgid "Templates"
@@ -6502,27 +6530,27 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:136
msgid "Data Import"
-msgstr ""
+msgstr "Data Import"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:142
msgid "Data Export"
-msgstr ""
+msgstr "Data Eksport"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:148
msgid "Barcode Scans"
-msgstr ""
+msgstr "Stregkode Scanninger"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:154
msgid "Background Tasks"
-msgstr ""
+msgstr "Baggrundsopgaver"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:160
msgid "Error Reports"
-msgstr ""
+msgstr "Fejlrapporter"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:166
msgid "Currencies"
-msgstr ""
+msgstr "Valutaer"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:170
#~ msgid "Location types"
@@ -6545,11 +6573,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:202
#: src/pages/part/CategoryDetail.tsx:329
msgid "Category Parameters"
-msgstr ""
+msgstr "Kategori Parametre"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:221
msgid "Location Types"
-msgstr ""
+msgstr "Lokationstyper"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:226
#~ msgid "Add a new user"
@@ -6563,7 +6591,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:247
msgid "Operations"
-msgstr ""
+msgstr "Operatør"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:259
msgid "Data Management"
@@ -6573,7 +6601,7 @@ msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:176
#: src/pages/Index/Settings/UserSettings.tsx:119
msgid "Reporting"
-msgstr ""
+msgstr "Rapportering"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:275
msgid "PLM"
@@ -6581,11 +6609,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:285
msgid "Extend / Integrate"
-msgstr ""
+msgstr "Udvid / Integrer"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:299
msgid "Advanced Options"
-msgstr ""
+msgstr "Avancerede indstillinger"
#: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:40
#~ msgid "Generated Labels"
@@ -6601,7 +6629,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:60
msgid "Machine Drivers"
-msgstr ""
+msgstr "Maskin Drivere"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:62
#~ msgid "There are no machine registry errors."
@@ -6609,11 +6637,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:68
msgid "Machine Types"
-msgstr ""
+msgstr "Maskin Typer"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:76
msgid "Machine Errors"
-msgstr ""
+msgstr "Maskine Fejl"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:89
msgid "Registry Registry Errors"
@@ -6634,12 +6662,12 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:122
#: src/tables/machine/MachineListTable.tsx:502
msgid "Machine Settings"
-msgstr ""
+msgstr "Maskine indstillinger"
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:33
#: src/tables/settings/UserTable.tsx:195
msgid "Info"
-msgstr ""
+msgstr "Info"
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:33
#~ msgid "Plugin Error Stack"
@@ -6647,7 +6675,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:37
msgid "External plugins are not enabled for this InvenTree installation."
-msgstr ""
+msgstr "Eksterne plugins er ikke aktiveret for denne InvenTree installation."
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:45
#~ msgid "Warning"
@@ -6659,23 +6687,23 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:76
msgid "Plugin Errors"
-msgstr ""
+msgstr "Plugin fejl"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:16
msgid "Page Size"
-msgstr ""
+msgstr "Side Størrelse"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:19
msgid "Landscape"
-msgstr ""
+msgstr "Landskab"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:25
msgid "Merge"
-msgstr ""
+msgstr "Flet"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:31
msgid "Attach to Model"
-msgstr ""
+msgstr "Vedhæft til model"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:55
#~ msgid "Generated Reports"
@@ -6687,11 +6715,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:30
msgid "Background worker not running"
-msgstr ""
+msgstr "Baggrund proces kører ikke"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31
msgid "The background task manager service is not running. Contact your system administrator."
-msgstr ""
+msgstr "Baggrunds opgavestyring kører ikke. Kontakt din systemadministrator."
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:35
#~ msgid "Background Worker Not Running"
@@ -6700,17 +6728,17 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:38
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:47
msgid "Pending Tasks"
-msgstr ""
+msgstr "Ventende Opgaver"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:39
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:55
msgid "Scheduled Tasks"
-msgstr ""
+msgstr "Planlagte Opgaver"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:40
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:63
msgid "Failed Tasks"
-msgstr ""
+msgstr "Mislykkede Opgaver"
#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:67
#~ msgid "Stock item"
@@ -6746,19 +6774,19 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:21
msgid "Alias"
-msgstr ""
+msgstr "Alias"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:22
msgid "Dimensionless"
-msgstr ""
+msgstr "Dimensionsløs"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:65
msgid "All units"
-msgstr ""
+msgstr "Alle enheder"
#: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:31
msgid "Tokens"
-msgstr ""
+msgstr "Tokens"
#: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:32
#~ msgid "Select settings relevant for user lifecycle. More available in"
@@ -6770,15 +6798,15 @@ msgstr ""
#: src/pages/Index/Settings/PluginSettingsGroup.tsx:99
msgid "The settings below are specific to each available plugin"
-msgstr ""
+msgstr "Indstillinger nedenfor er specifikke for hvert tilgængeligt plugin"
#: src/pages/Index/Settings/SystemSettings.tsx:78
msgid "Authentication"
-msgstr ""
+msgstr "Autentificering"
#: src/pages/Index/Settings/SystemSettings.tsx:104
msgid "Barcodes"
-msgstr ""
+msgstr "Stregkoder"
#: src/pages/Index/Settings/SystemSettings.tsx:118
#~ msgid "Physical Units"
@@ -6791,11 +6819,11 @@ msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:128
#: src/pages/Index/Settings/UserSettings.tsx:113
msgid "The settings below are specific to each available notification method"
-msgstr ""
+msgstr "Indstillingerne nedenfor er specifikke for hver tilgængelige underretningsmetode"
#: src/pages/Index/Settings/SystemSettings.tsx:134
msgid "Pricing"
-msgstr ""
+msgstr "Prissætning"
#: src/pages/Index/Settings/SystemSettings.tsx:135
#~ msgid "Exchange Rates"
@@ -6803,7 +6831,7 @@ msgstr ""
#: src/pages/Index/Settings/SystemSettings.tsx:170
msgid "Labels"
-msgstr ""
+msgstr "Label"
#: src/pages/Index/Settings/SystemSettings.tsx:317
#~ msgid "Switch to User Setting"
@@ -6811,15 +6839,15 @@ msgstr ""
#: src/pages/Index/Settings/UserSettings.tsx:41
msgid "Account"
-msgstr ""
+msgstr "Konto"
#: src/pages/Index/Settings/UserSettings.tsx:47
msgid "Security"
-msgstr ""
+msgstr "Sikkerhed"
#: src/pages/Index/Settings/UserSettings.tsx:53
msgid "Display Options"
-msgstr ""
+msgstr "Visningsindstillinger"
#: src/pages/Index/Settings/UserSettings.tsx:159
#~ msgid "Switch to System Setting"
@@ -6843,11 +6871,11 @@ msgstr ""
#: src/pages/Notifications.tsx:83
msgid "History"
-msgstr ""
+msgstr "Historik"
#: src/pages/Notifications.tsx:91
msgid "Mark as unread"
-msgstr ""
+msgstr "Marker som ulæst"
#: src/pages/Notifications.tsx:146
#~ msgid "Delete notifications"
@@ -6855,15 +6883,15 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:70
msgid "No Required Items"
-msgstr ""
+msgstr "Ingen Påkrævede Varer"
#: src/pages/build/BuildDetail.tsx:72
msgid "This build order does not have any required items."
-msgstr ""
+msgstr "Denne byggeordre har ingen påkrævede varer."
#: src/pages/build/BuildDetail.tsx:73
msgid "The assembled part may not have a Bill of Materials (BOM) defined, or the BOM is empty."
-msgstr ""
+msgstr "Den samlede del har muligvis ikke en defineret stykliste, eller styklisten er tom."
#: src/pages/build/BuildDetail.tsx:80
#~ msgid "Build Status"
@@ -6896,7 +6924,7 @@ msgstr ""
#: src/tables/build/BuildOrderTable.tsx:83
#: src/tables/stock/StockItemTable.tsx:74
msgid "Revision"
-msgstr ""
+msgstr "Revision"
#: src/pages/build/BuildDetail.tsx:221
#~ msgid "Edit build order"
@@ -6921,12 +6949,12 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
msgid "External"
-msgstr ""
+msgstr "Ekstern"
#: src/pages/build/BuildDetail.tsx:245
#: src/pages/purchasing/PurchaseOrderDetail.tsx:142
@@ -6936,33 +6964,33 @@ msgstr ""
#: src/tables/build/BuildAllocatedStockTable.tsx:112
#: src/tables/build/BuildLineTable.tsx:353
msgid "Reference"
-msgstr ""
+msgstr "Reference"
#: src/pages/build/BuildDetail.tsx:259
msgid "Parent Build"
-msgstr ""
+msgstr "Overordnet produktion"
#: src/pages/build/BuildDetail.tsx:270
msgid "Build Quantity"
-msgstr ""
+msgstr "Produktions antal"
#: src/pages/build/BuildDetail.tsx:276
#: src/pages/part/PartDetail.tsx:598
#: src/tables/bom/BomTable.tsx:365
#: src/tables/bom/BomTable.tsx:407
msgid "Can Build"
-msgstr ""
+msgstr "Kan Bygge"
#: src/pages/build/BuildDetail.tsx:285
#: src/pages/build/BuildDetail.tsx:475
msgid "Completed Outputs"
-msgstr ""
+msgstr "Gennemførte Output"
#: src/pages/build/BuildDetail.tsx:302
#: src/tables/Filter.tsx:381
#: src/tables/build/BuildOrderTable.tsx:143
msgid "Issued By"
-msgstr ""
+msgstr "Udstedt Af"
#: src/pages/build/BuildDetail.tsx:310
#: src/pages/part/PartDetail.tsx:691
@@ -6972,15 +7000,15 @@ msgstr ""
#: src/tables/ColumnRenderers.tsx:464
#: src/tables/Filter.tsx:319
msgid "Responsible"
-msgstr ""
+msgstr "Ansvarlig"
#: src/pages/build/BuildDetail.tsx:328
msgid "Any location"
-msgstr ""
+msgstr "Enhver placering"
#: src/pages/build/BuildDetail.tsx:335
msgid "Destination Location"
-msgstr ""
+msgstr "Destinations Placering"
#: src/pages/build/BuildDetail.tsx:347
#: src/pages/part/PartDetail.tsx:727
@@ -6991,7 +7019,7 @@ msgstr ""
#: src/tables/settings/ApiTokenTable.tsx:97
#: src/tables/settings/PendingTasksTable.tsx:41
msgid "Created"
-msgstr ""
+msgstr "Oprettet"
#: src/pages/build/BuildDetail.tsx:359
#: src/pages/purchasing/PurchaseOrderDetail.tsx:287
@@ -6999,7 +7027,7 @@ msgstr ""
#: src/pages/sales/SalesOrderDetail.tsx:258
#: src/tables/ColumnRenderers.tsx:486
msgid "Start Date"
-msgstr ""
+msgstr "Startdato"
#: src/pages/build/BuildDetail.tsx:367
#: src/pages/purchasing/PurchaseOrderDetail.tsx:295
@@ -7010,7 +7038,7 @@ msgstr ""
#: src/tables/sales/ReturnOrderLineItemTable.tsx:154
#: src/tables/sales/SalesOrderLineItemTable.tsx:134
msgid "Target Date"
-msgstr ""
+msgstr "Måldato"
#: src/pages/build/BuildDetail.tsx:368
#~ msgid "Reporting Actions"
@@ -7024,174 +7052,174 @@ msgstr ""
#: src/tables/build/BuildOrderTable.tsx:93
#: src/tables/sales/SalesOrderLineItemTable.tsx:347
msgid "Completed"
-msgstr ""
+msgstr "Fuldført"
#: src/pages/build/BuildDetail.tsx:411
msgid "Build Details"
-msgstr ""
+msgstr "Bygge Detaljer"
#: src/pages/build/BuildDetail.tsx:417
msgid "Required Parts"
-msgstr ""
+msgstr "Nødvendige Dele"
#: src/pages/build/BuildDetail.tsx:429
#: src/pages/sales/SalesOrderDetail.tsx:408
#: src/pages/sales/SalesOrderShipmentDetail.tsx:259
#: src/tables/part/PartSalesAllocationsTable.tsx:73
msgid "Allocated Stock"
-msgstr ""
+msgstr "Tildelt Lager"
#: src/pages/build/BuildDetail.tsx:445
msgid "Consumed Stock"
-msgstr ""
+msgstr "Forbrugt Lager"
#: src/pages/build/BuildDetail.tsx:462
msgid "Incomplete Outputs"
-msgstr ""
+msgstr "Ufuldstændige Output"
#: src/pages/build/BuildDetail.tsx:490
msgid "External Orders"
-msgstr ""
+msgstr "Eksterne Ordrer"
#: src/pages/build/BuildDetail.tsx:504
msgid "Child Build Orders"
-msgstr ""
+msgstr "Byg Underordnede Ordrer"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
msgid "Test Results"
-msgstr ""
+msgstr "Testresultater"
#: src/pages/build/BuildDetail.tsx:555
msgid "Edit Build Order"
-msgstr ""
+msgstr "Rediger Byggeordre"
#: src/pages/build/BuildDetail.tsx:577
#: src/tables/build/BuildOrderTable.tsx:207
#: src/tables/build/BuildOrderTable.tsx:223
msgid "Add Build Order"
-msgstr ""
+msgstr "Tilføj Byggeordre"
#: src/pages/build/BuildDetail.tsx:587
msgid "Cancel Build Order"
-msgstr ""
+msgstr "Annuller Byggeordre"
#: src/pages/build/BuildDetail.tsx:589
#: src/pages/purchasing/PurchaseOrderDetail.tsx:421
#: src/pages/sales/ReturnOrderDetail.tsx:432
#: src/pages/sales/SalesOrderDetail.tsx:459
msgid "Order cancelled"
-msgstr ""
+msgstr "Ordren annulleret"
#: src/pages/build/BuildDetail.tsx:590
#: src/pages/purchasing/PurchaseOrderDetail.tsx:420
#: src/pages/sales/ReturnOrderDetail.tsx:431
#: src/pages/sales/SalesOrderDetail.tsx:458
msgid "Cancel this order"
-msgstr ""
+msgstr "Annuller denne ordre"
#: src/pages/build/BuildDetail.tsx:599
msgid "Hold Build Order"
-msgstr ""
+msgstr "Hold Byg Ordre"
#: src/pages/build/BuildDetail.tsx:601
#: src/pages/purchasing/PurchaseOrderDetail.tsx:428
#: src/pages/sales/ReturnOrderDetail.tsx:439
#: src/pages/sales/SalesOrderDetail.tsx:466
msgid "Place this order on hold"
-msgstr ""
+msgstr "Placer denne ordre på hold"
#: src/pages/build/BuildDetail.tsx:602
#: src/pages/purchasing/PurchaseOrderDetail.tsx:429
#: src/pages/sales/ReturnOrderDetail.tsx:440
#: src/pages/sales/SalesOrderDetail.tsx:467
msgid "Order placed on hold"
-msgstr ""
+msgstr "Ordre placeret på hold"
#: src/pages/build/BuildDetail.tsx:607
msgid "Issue Build Order"
-msgstr ""
+msgstr "Udsted Byggeordre"
#: src/pages/build/BuildDetail.tsx:609
#: src/pages/purchasing/PurchaseOrderDetail.tsx:412
#: src/pages/sales/ReturnOrderDetail.tsx:423
#: src/pages/sales/SalesOrderDetail.tsx:450
msgid "Issue this order"
-msgstr ""
+msgstr "Udsted denne ordre"
#: src/pages/build/BuildDetail.tsx:610
#: src/pages/purchasing/PurchaseOrderDetail.tsx:413
#: src/pages/sales/ReturnOrderDetail.tsx:424
#: src/pages/sales/SalesOrderDetail.tsx:451
msgid "Order issued"
-msgstr ""
+msgstr "Ordre udstedt"
#: src/pages/build/BuildDetail.tsx:629
msgid "Complete Build Order"
-msgstr ""
+msgstr "Færdiggør Byggeordre"
#: src/pages/build/BuildDetail.tsx:635
#: src/pages/purchasing/PurchaseOrderDetail.tsx:441
#: src/pages/sales/ReturnOrderDetail.tsx:447
#: src/pages/sales/SalesOrderDetail.tsx:485
msgid "Mark this order as complete"
-msgstr ""
+msgstr "Marker denne ordre som færdig"
#: src/pages/build/BuildDetail.tsx:638
#: src/pages/purchasing/PurchaseOrderDetail.tsx:435
#: src/pages/sales/ReturnOrderDetail.tsx:448
#: src/pages/sales/SalesOrderDetail.tsx:486
msgid "Order completed"
-msgstr ""
+msgstr "Ordre fuldført"
#: src/pages/build/BuildDetail.tsx:665
#: src/pages/purchasing/PurchaseOrderDetail.tsx:464
#: src/pages/sales/ReturnOrderDetail.tsx:475
#: src/pages/sales/SalesOrderDetail.tsx:521
msgid "Issue Order"
-msgstr ""
+msgstr "Udstede Ordre"
#: src/pages/build/BuildDetail.tsx:672
#: src/pages/purchasing/PurchaseOrderDetail.tsx:471
#: src/pages/sales/ReturnOrderDetail.tsx:482
#: src/pages/sales/SalesOrderDetail.tsx:535
msgid "Complete Order"
-msgstr ""
+msgstr "Fuldfør ordre"
#: src/pages/build/BuildDetail.tsx:691
msgid "Build Order Actions"
-msgstr ""
+msgstr "Byg Ordre Handlinger"
#: src/pages/build/BuildDetail.tsx:696
#: src/pages/purchasing/PurchaseOrderDetail.tsx:494
#: src/pages/sales/ReturnOrderDetail.tsx:505
#: src/pages/sales/SalesOrderDetail.tsx:559
msgid "Edit order"
-msgstr ""
+msgstr "Rediger ordre"
#: src/pages/build/BuildDetail.tsx:700
#: src/pages/purchasing/PurchaseOrderDetail.tsx:502
#: src/pages/sales/ReturnOrderDetail.tsx:511
#: src/pages/sales/SalesOrderDetail.tsx:564
msgid "Duplicate order"
-msgstr ""
+msgstr "Dupliker ordre"
#: src/pages/build/BuildDetail.tsx:704
#: src/pages/purchasing/PurchaseOrderDetail.tsx:505
#: src/pages/sales/ReturnOrderDetail.tsx:516
#: src/pages/sales/SalesOrderDetail.tsx:567
msgid "Hold order"
-msgstr ""
+msgstr "Hold ordre"
#: src/pages/build/BuildDetail.tsx:709
#: src/pages/purchasing/PurchaseOrderDetail.tsx:510
#: src/pages/sales/ReturnOrderDetail.tsx:521
#: src/pages/sales/SalesOrderDetail.tsx:572
msgid "Cancel order"
-msgstr ""
+msgstr "Annuller ordre"
#: src/pages/build/BuildDetail.tsx:747
#: src/pages/stock/StockDetail.tsx:344
@@ -7200,7 +7228,7 @@ msgstr ""
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157
#: src/tables/stock/StockTrackingTable.tsx:109
msgid "Build Order"
-msgstr ""
+msgstr "Produktionsordre"
#: src/pages/build/BuildIndex.tsx:23
#~ msgid "Build order created"
@@ -7209,7 +7237,7 @@ msgstr ""
#: src/pages/build/BuildIndex.tsx:35
#: src/tables/build/BuildOrderTable.tsx:184
msgid "Show external build orders"
-msgstr ""
+msgstr "Vis eksterne bygge ordrer"
#: src/pages/build/BuildIndex.tsx:39
#~ msgid "New Build Order"
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7233,7 +7262,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:67
#: src/pages/sales/SalesIndex.tsx:113
msgid "Calendar View"
-msgstr ""
+msgstr "Kalender Visning"
#: src/pages/build/BuildIndex.tsx:86
#: src/pages/part/CategoryDetail.tsx:306
@@ -7245,28 +7274,29 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
-msgstr ""
+msgstr "Parametrisk Visning"
#: src/pages/company/CompanyDetail.tsx:100
msgid "Website"
-msgstr ""
+msgstr "Hjemmeside"
#: src/pages/company/CompanyDetail.tsx:108
msgid "Phone Number"
-msgstr ""
+msgstr "Telefonnummer"
#: src/pages/company/CompanyDetail.tsx:115
msgid "Email Address"
-msgstr ""
+msgstr "E-mail adresse"
#: src/pages/company/CompanyDetail.tsx:122
msgid "Tax ID"
-msgstr ""
+msgstr "Skat ID"
#: src/pages/company/CompanyDetail.tsx:132
msgid "Default Currency"
-msgstr ""
+msgstr "Standardvaluta"
#: src/pages/company/CompanyDetail.tsx:143
#: src/pages/company/ManufacturerDetail.tsx:8
@@ -7277,7 +7307,7 @@ msgstr ""
#: src/tables/company/CompanyTable.tsx:101
#: src/tables/purchasing/SupplierPartTable.tsx:89
msgid "Manufacturer"
-msgstr ""
+msgstr "Producent"
#: src/pages/company/CompanyDetail.tsx:149
#: src/pages/company/CustomerDetail.tsx:8
@@ -7294,7 +7324,7 @@ msgstr ""
#: src/tables/sales/SalesOrderTable.tsx:133
#: src/tables/stock/StockTrackingTable.tsx:153
msgid "Customer"
-msgstr ""
+msgstr "Kunde"
#: src/pages/company/CompanyDetail.tsx:175
#~ msgid "Edit company"
@@ -7302,11 +7332,11 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:182
msgid "Company Details"
-msgstr ""
+msgstr "Firma detaljer"
#: src/pages/company/CompanyDetail.tsx:188
msgid "Supplied Parts"
-msgstr ""
+msgstr "Leverede Dele"
#: src/pages/company/CompanyDetail.tsx:189
#~ msgid "Delete company"
@@ -7314,79 +7344,79 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:195
msgid "Manufactured Parts"
-msgstr ""
+msgstr "Fremstillede Dele"
#: src/pages/company/CompanyDetail.tsx:242
msgid "Assigned Stock"
-msgstr ""
+msgstr "Tildelt Lager"
#: src/pages/company/CompanyDetail.tsx:287
#: src/tables/company/CompanyTable.tsx:82
msgid "Edit Company"
-msgstr ""
+msgstr "Rediger virksomhed"
#: src/pages/company/CompanyDetail.tsx:295
msgid "Delete Company"
-msgstr ""
+msgstr "Slet virksomhed"
#: src/pages/company/CompanyDetail.tsx:310
msgid "Company Actions"
-msgstr ""
+msgstr "Virksomheds Handlinger"
#: src/pages/company/ManufacturerPartDetail.tsx:77
#: src/pages/company/SupplierPartDetail.tsx:90
msgid "Internal Part"
-msgstr ""
+msgstr "Intern Del"
#: src/pages/company/ManufacturerPartDetail.tsx:111
msgid "Manufacturer Part Number"
-msgstr ""
+msgstr "Producent Delnummer"
#: src/pages/company/ManufacturerPartDetail.tsx:128
#: src/pages/company/SupplierPartDetail.tsx:114
msgid "External Link"
-msgstr ""
+msgstr "Ekstern link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
-msgstr ""
+msgstr "Del Detaljer"
#: src/pages/company/ManufacturerPartDetail.tsx:150
msgid "Manufacturer Details"
-msgstr ""
+msgstr "Producent Detaljer"
#: src/pages/company/ManufacturerPartDetail.tsx:159
msgid "Manufacturer Part Details"
-msgstr ""
+msgstr "Producent Del Detaljer"
#: src/pages/company/ManufacturerPartDetail.tsx:165
#: src/pages/company/SupplierPartDetail.tsx:253
#: src/pages/purchasing/PurchaseOrderDetail.tsx:382
msgid "Received Stock"
-msgstr ""
+msgstr "Modtaget Lager"
#: src/pages/company/ManufacturerPartDetail.tsx:211
#: src/tables/purchasing/ManufacturerPartTable.tsx:108
msgid "Edit Manufacturer Part"
-msgstr ""
+msgstr "Rediger Producent Del"
#: src/pages/company/ManufacturerPartDetail.tsx:218
#: src/tables/purchasing/ManufacturerPartTable.tsx:96
#: src/tables/purchasing/ManufacturerPartTable.tsx:115
#: src/tables/purchasing/ManufacturerPartTable.tsx:156
msgid "Add Manufacturer Part"
-msgstr ""
+msgstr "Tilføj Producent Part"
#: src/pages/company/ManufacturerPartDetail.tsx:230
#: src/tables/purchasing/ManufacturerPartTable.tsx:126
msgid "Delete Manufacturer Part"
-msgstr ""
+msgstr "Slet Producent Del"
#: src/pages/company/ManufacturerPartDetail.tsx:245
msgid "Manufacturer Part Actions"
-msgstr ""
+msgstr "Producent Del Handlinger"
#: src/pages/company/ManufacturerPartDetail.tsx:281
#~ msgid "ManufacturerPart"
@@ -7395,7 +7425,7 @@ msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:105
#: src/tables/part/RelatedPartTable.tsx:82
msgid "Part Description"
-msgstr ""
+msgstr "Del Beskrivelse"
#: src/pages/company/SupplierPartDetail.tsx:180
#: src/tables/part/PartPurchaseOrdersTable.tsx:73
@@ -7403,128 +7433,128 @@ msgstr ""
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233
#: src/tables/purchasing/SupplierPartTable.tsx:138
msgid "Pack Quantity"
-msgstr ""
+msgstr "Pakkemængde"
#: src/pages/company/SupplierPartDetail.tsx:205
msgid "Supplier Availability"
-msgstr ""
+msgstr "Leverandør Tilgængelighed"
#: src/pages/company/SupplierPartDetail.tsx:213
msgid "Availability Updated"
-msgstr ""
+msgstr "Tilgængelighed Opdateret"
#: src/pages/company/SupplierPartDetail.tsx:238
msgid "Availability"
-msgstr ""
+msgstr "Tilgængelighed"
#: src/pages/company/SupplierPartDetail.tsx:247
msgid "Supplier Part Details"
-msgstr ""
+msgstr "Leverandør Del Detaljer"
#: src/pages/company/SupplierPartDetail.tsx:280
#: src/pages/part/PartPricingPanel.tsx:113
#: src/pages/part/pricing/PricingOverviewPanel.tsx:239
msgid "Supplier Pricing"
-msgstr ""
+msgstr "Leverandør Priser"
#: src/pages/company/SupplierPartDetail.tsx:313
msgid "Supplier Part Actions"
-msgstr ""
+msgstr "Leverandør Del Handlinger"
#: src/pages/company/SupplierPartDetail.tsx:337
#: src/tables/purchasing/SupplierPartTable.tsx:244
msgid "Edit Supplier Part"
-msgstr ""
+msgstr "Rediger Leverandør Del"
#: src/pages/company/SupplierPartDetail.tsx:345
#: src/tables/purchasing/SupplierPartTable.tsx:264
msgid "Delete Supplier Part"
-msgstr ""
+msgstr "Slet Leverandørdel"
#: src/pages/company/SupplierPartDetail.tsx:353
#: src/tables/purchasing/SupplierPartTable.tsx:172
#: src/tables/purchasing/SupplierPartTable.tsx:251
msgid "Add Supplier Part"
-msgstr ""
+msgstr "Tilføj leverandørdel"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
-msgstr ""
+msgstr "Intet lager"
#: src/pages/core/CoreIndex.tsx:46
#: src/pages/core/GroupDetail.tsx:81
#: src/pages/core/UserDetail.tsx:224
msgid "System Overview"
-msgstr ""
+msgstr "Systemoversigt"
#: src/pages/core/GroupDetail.tsx:45
msgid "Group Name"
-msgstr ""
+msgstr "Gruppenavn"
#: src/pages/core/GroupDetail.tsx:52
#: src/pages/core/GroupDetail.tsx:67
#: src/tables/settings/GroupTable.tsx:85
msgid "Group Details"
-msgstr ""
+msgstr "Gruppeoplysninger"
#: src/pages/core/GroupDetail.tsx:55
#: src/tables/settings/GroupTable.tsx:112
msgid "Group Roles"
-msgstr ""
+msgstr "Gruppe Roller"
#: src/pages/core/UserDetail.tsx:175
#: src/tables/ColumnRenderers.tsx:418
msgid "User Information"
-msgstr ""
+msgstr "Brugerinformation"
#: src/pages/core/UserDetail.tsx:176
msgid "User Permissions"
-msgstr ""
+msgstr "Brugertilladelser"
#: src/pages/core/UserDetail.tsx:178
msgid "User Profile"
-msgstr ""
+msgstr "Brugerprofil"
#: src/pages/core/UserDetail.tsx:188
#: src/tables/settings/UserTable.tsx:164
msgid "User Details"
-msgstr ""
+msgstr "Bruger Information"
#: src/pages/core/UserDetail.tsx:206
msgid "Basic user"
-msgstr ""
+msgstr "Basis bruger"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
-msgstr ""
+msgstr "Sti"
#: src/pages/part/CategoryDetail.tsx:119
msgid "Parent Category"
-msgstr ""
+msgstr "Overordnet kategori"
#: src/pages/part/CategoryDetail.tsx:142
#: src/pages/part/CategoryDetail.tsx:279
msgid "Subcategories"
-msgstr ""
+msgstr "Underkategorier"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
-msgstr ""
+msgstr "Strukturelle"
#: src/pages/part/CategoryDetail.tsx:155
msgid "Parent default location"
-msgstr ""
+msgstr "Overordnet standard lokation"
#: src/pages/part/CategoryDetail.tsx:162
msgid "Default location"
-msgstr ""
+msgstr "Standard lokation"
#: src/pages/part/CategoryDetail.tsx:173
msgid "Top level part category"
@@ -7534,46 +7564,46 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:251
#: src/tables/part/PartCategoryTable.tsx:122
msgid "Edit Part Category"
-msgstr ""
+msgstr "Rediger Del Kategori"
#: src/pages/part/CategoryDetail.tsx:192
msgid "Move items to parent category"
-msgstr ""
+msgstr "Flyt elementer til overordnet kategori"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
-msgstr ""
+msgstr "Slet vare"
#: src/pages/part/CategoryDetail.tsx:204
#: src/pages/part/CategoryDetail.tsx:256
msgid "Delete Part Category"
-msgstr ""
+msgstr "Slet Del Kategori"
#: src/pages/part/CategoryDetail.tsx:207
msgid "Parts Action"
-msgstr ""
+msgstr "Dele Handling"
#: src/pages/part/CategoryDetail.tsx:208
msgid "Action for parts in this category"
-msgstr ""
+msgstr "Handling for dele i denne kategori"
#: src/pages/part/CategoryDetail.tsx:214
msgid "Child Categories Action"
-msgstr ""
+msgstr "Underkategori Handling"
#: src/pages/part/CategoryDetail.tsx:215
msgid "Action for child categories in this category"
-msgstr ""
+msgstr "Handling for underliggende kategorier i denne kategori"
#: src/pages/part/CategoryDetail.tsx:247
#: src/tables/part/PartCategoryTable.tsx:143
msgid "Category Actions"
-msgstr ""
+msgstr "Kategori Handlinger"
#: src/pages/part/CategoryDetail.tsx:273
msgid "Category Details"
-msgstr ""
+msgstr "Kategori Detaljer"
#: src/pages/part/PartAllocationPanel.tsx:21
#: src/pages/stock/StockDetail.tsx:555
@@ -7591,15 +7621,15 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:183
#: src/pages/part/PartDetail.tsx:227
msgid "Validate BOM"
-msgstr ""
+msgstr "Valider Stykliste"
#: src/pages/part/PartDetail.tsx:184
msgid "Do you want to validate the bill of materials for this assembly?"
-msgstr ""
+msgstr "Vil du validere styklisten til denne samling?"
#: src/pages/part/PartDetail.tsx:187
msgid "Bill of materials scheduled for validation"
-msgstr ""
+msgstr "Stykliste planlagt til validering"
#: src/pages/part/PartDetail.tsx:187
#~ msgid "BOM validated"
@@ -7607,32 +7637,32 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:205
msgid "BOM Validated"
-msgstr ""
+msgstr "Stykliste Valideret"
#: src/pages/part/PartDetail.tsx:206
msgid "The Bill of Materials for this part has been validated"
-msgstr ""
+msgstr "Materialregningen for denne del er blevet valideret"
#: src/pages/part/PartDetail.tsx:210
#: src/pages/part/PartDetail.tsx:215
msgid "BOM Not Validated"
-msgstr ""
+msgstr "Stykliste Ikke Valideret"
#: src/pages/part/PartDetail.tsx:211
msgid "The Bill of Materials for this part has previously been checked, but requires revalidation"
-msgstr ""
+msgstr "Materialregningen for denne del er tidligere blevet kontrolleret, men kræver fornyet godkendelse"
#: src/pages/part/PartDetail.tsx:216
msgid "The Bill of Materials for this part has not yet been validated"
-msgstr ""
+msgstr "Materialregningen for denne del er endnu ikke blevet valideret"
#: src/pages/part/PartDetail.tsx:247
msgid "Validated On"
-msgstr ""
+msgstr "Valideret Den"
#: src/pages/part/PartDetail.tsx:252
msgid "Validated By"
-msgstr ""
+msgstr "Valideret Af"
#: src/pages/part/PartDetail.tsx:286
#~ msgid "Variant Stock"
@@ -7656,21 +7686,21 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:473
msgid "Revision of"
-msgstr ""
+msgstr "Revision af"
#: src/pages/part/PartDetail.tsx:493
#: src/tables/ColumnRenderers.tsx:209
#: src/tables/ColumnRenderers.tsx:218
msgid "Default Location"
-msgstr ""
+msgstr "Standard lokation"
#: src/pages/part/PartDetail.tsx:500
msgid "Category Default Location"
-msgstr ""
+msgstr "Kategori Standard Lokation"
#: src/pages/part/PartDetail.tsx:507
msgid "Units"
-msgstr ""
+msgstr "Enheder"
#: src/pages/part/PartDetail.tsx:510
#~ msgid "Stocktake By"
@@ -7679,7 +7709,7 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:514
#: src/tables/settings/PendingTasksTable.tsx:51
msgid "Keywords"
-msgstr ""
+msgstr "Nøgleord"
#: src/pages/part/PartDetail.tsx:542
#: src/tables/bom/BomTable.tsx:439
@@ -7687,26 +7717,26 @@ msgstr ""
#: src/tables/part/PartTable.tsx:319
#: src/tables/sales/SalesOrderLineItemTable.tsx:138
msgid "Available Stock"
-msgstr ""
+msgstr "Tilgængelig Lager"
#: src/pages/part/PartDetail.tsx:548
#: src/tables/bom/BomTable.tsx:341
#: src/tables/build/BuildLineTable.tsx:268
#: src/tables/sales/SalesOrderLineItemTable.tsx:180
msgid "On order"
-msgstr ""
+msgstr "På bestilling"
#: src/pages/part/PartDetail.tsx:555
msgid "Required for Orders"
-msgstr ""
+msgstr "Kræves til ordrer"
#: src/pages/part/PartDetail.tsx:566
msgid "Allocated to Build Orders"
-msgstr ""
+msgstr "Allokeret til Byggeordrer"
#: src/pages/part/PartDetail.tsx:578
msgid "Allocated to Sales Orders"
-msgstr ""
+msgstr "Allokeret til Salgsordrer"
#: src/pages/part/PartDetail.tsx:605
msgid "Minimum Stock"
@@ -7720,25 +7750,25 @@ msgstr ""
#: src/tables/part/ParametricPartTable.tsx:24
#: src/tables/part/PartTable.tsx:203
msgid "Locked"
-msgstr ""
+msgstr "Låst"
#: src/pages/part/PartDetail.tsx:626
msgid "Template Part"
-msgstr ""
+msgstr "Skabelon Del"
#: src/pages/part/PartDetail.tsx:631
#: src/tables/bom/BomTable.tsx:429
msgid "Assembled Part"
-msgstr ""
+msgstr "Samlede Del"
#: src/pages/part/PartDetail.tsx:636
msgid "Component Part"
-msgstr ""
+msgstr "Komponent Del"
#: src/pages/part/PartDetail.tsx:641
#: src/tables/bom/BomTable.tsx:419
msgid "Testable Part"
-msgstr ""
+msgstr "Testbar Del"
#: src/pages/part/PartDetail.tsx:647
#: src/tables/bom/BomTable.tsx:424
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7772,126 +7802,126 @@ msgstr ""
#: src/tables/ColumnRenderers.tsx:435
#: src/tables/Filter.tsx:373
msgid "Created By"
-msgstr ""
+msgstr "Oprettet af"
#: src/pages/part/PartDetail.tsx:698
msgid "Default Supplier"
-msgstr ""
+msgstr "Standard leverandør"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
-msgstr ""
+msgstr "Standard Udløbsdato"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
-msgstr ""
+msgstr "dage"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
-msgstr ""
+msgstr "Seneste Serienummer"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
-msgstr ""
+msgstr "Stykliste"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
-msgstr ""
+msgstr "Brugt I"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
-msgstr ""
+msgstr "Del Prisfastsættelse"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
-msgstr ""
+msgstr "Test Skabeloner"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
-msgstr ""
+msgstr "Relaterede Dele"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
-msgstr ""
-
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
+msgstr "Delen er låst"
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Delparametre kan ikke redigeres, da delen er låst"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
-msgstr ""
+msgstr "Påkrævet"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
-msgstr ""
+msgstr "Underskud"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
-msgstr ""
+msgstr "Tilføj del"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
-msgstr ""
+msgstr "Slet Del"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
-msgstr ""
+msgstr "Sletning af denne del kan ikke fortrydes"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
-msgstr ""
+msgstr "Ordre"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
-msgstr ""
+msgstr "Bestil Lager"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
-msgstr ""
+msgstr "Søg på serienummer"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
-msgstr ""
+msgstr "Del Handlinger"
#: src/pages/part/PartIndex.tsx:29
#~ msgid "Categories"
@@ -7908,17 +7938,17 @@ msgstr ""
#: src/pages/part/PartPricingPanel.tsx:93
msgid "Purchase History"
-msgstr ""
+msgstr "Købs Historik"
#: src/pages/part/PartPricingPanel.tsx:107
#: src/pages/part/pricing/PricingOverviewPanel.tsx:211
msgid "Internal Pricing"
-msgstr ""
+msgstr "Intern Prissætning"
#: src/pages/part/PartPricingPanel.tsx:122
#: src/pages/part/pricing/PricingOverviewPanel.tsx:221
msgid "BOM Pricing"
-msgstr ""
+msgstr "Stykliste Prissætning"
#: src/pages/part/PartPricingPanel.tsx:129
#: src/pages/part/pricing/PricingOverviewPanel.tsx:249
@@ -7928,12 +7958,12 @@ msgstr ""
#: src/pages/part/PartPricingPanel.tsx:141
#: src/pages/part/pricing/PricingOverviewPanel.tsx:258
msgid "Sale Pricing"
-msgstr ""
+msgstr "Salg Prissætning"
#: src/pages/part/PartPricingPanel.tsx:147
#: src/pages/part/pricing/PricingOverviewPanel.tsx:267
msgid "Sale History"
-msgstr ""
+msgstr "Salgs Historik"
#: src/pages/part/PartSchedulingDetail.tsx:51
#: src/pages/part/PartSchedulingDetail.tsx:291
@@ -7981,17 +8011,17 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:402
#: src/tables/stock/StockItemTable.tsx:271
msgid "Stock Value"
-msgstr ""
+msgstr "Lagerværdi"
#: src/pages/part/PartStockHistoryDetail.tsx:240
#: src/pages/part/pricing/PricingOverviewPanel.tsx:334
msgid "Minimum Value"
-msgstr ""
+msgstr "Minimum Værdi"
#: src/pages/part/PartStockHistoryDetail.tsx:246
#: src/pages/part/pricing/PricingOverviewPanel.tsx:335
msgid "Maximum Value"
-msgstr ""
+msgstr "Maksimal Værdi"
#: src/pages/part/PartStocktakeDetail.tsx:99
#: src/tables/settings/StocktakeReportTable.tsx:70
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8019,26 +8049,26 @@ msgstr ""
#: src/tables/sales/SalesOrderLineItemTable.tsx:124
#: src/tables/sales/SalesOrderTable.tsx:175
msgid "Total Price"
-msgstr ""
+msgstr "Total Pris"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
-msgstr ""
+msgstr "Komponent"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
-msgstr ""
+msgstr "Minimum Pris"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
-msgstr ""
+msgstr "Maksimal Pris"
#: src/pages/part/pricing/BomPricingPanel.tsx:112
#~ msgid "Minimum Total Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8060,15 +8090,15 @@ msgstr ""
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:84
#: src/tables/stock/StockItemTable.tsx:259
msgid "Unit Price"
-msgstr ""
+msgstr "Enhedspris"
+
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
+msgid "Pie Chart"
+msgstr "Cirkeldiagram"
#: src/pages/part/pricing/BomPricingPanel.tsx:217
-msgid "Pie Chart"
-msgstr ""
-
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
msgid "Bar Chart"
-msgstr ""
+msgstr "Søjlediagram"
#: src/pages/part/pricing/PriceBreakPanel.tsx:58
#: src/pages/part/pricing/PriceBreakPanel.tsx:111
@@ -8093,7 +8123,7 @@ msgstr ""
#: src/pages/part/pricing/PriceBreakPanel.tsx:171
msgid "Price"
-msgstr ""
+msgstr "Pris"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:74
msgid "Refreshing pricing data"
@@ -8109,74 +8139,74 @@ msgstr ""
#: src/pages/part/pricing/PricingOverviewPanel.tsx:129
msgid "Edit Pricing"
-msgstr ""
+msgstr "Rediger Pris"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:141
msgid "Pricing Category"
-msgstr ""
+msgstr "Prissætning Kategori"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:160
msgid "Minimum"
-msgstr ""
+msgstr "Minimum"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:173
msgid "Maximum"
-msgstr ""
+msgstr "Maksimum"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:192
msgid "Override Pricing"
-msgstr ""
+msgstr "Overskriv Priser"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:203
msgid "Overall Pricing"
-msgstr ""
+msgstr "Samlet Prissætning"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:229
msgid "Purchase Pricing"
-msgstr ""
+msgstr "Købspris"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:288
#: src/pages/stock/StockDetail.tsx:426
#: src/tables/general/ParameterTable.tsx:101
#: src/tables/stock/StockItemTable.tsx:300
msgid "Last Updated"
-msgstr ""
+msgstr "Sidst Opdateret"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:292
msgid "Pricing Not Set"
-msgstr ""
+msgstr "Pris Ikke Fastsat"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:293
msgid "Pricing data has not been calculated for this part"
-msgstr ""
+msgstr "Prisdata er ikke beregnet for denne del"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:297
msgid "Pricing Actions"
-msgstr ""
+msgstr "Pris Handlinger"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:300
msgid "Refresh"
-msgstr ""
+msgstr "Genindlæser"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:301
msgid "Refresh pricing data"
-msgstr ""
+msgstr "Genindlæser prisdata"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:316
msgid "Edit pricing data"
-msgstr ""
+msgstr "Rediger prisdata"
#: src/pages/part/pricing/PricingPanel.tsx:24
msgid "No data available"
-msgstr ""
+msgstr "Ingen data tilgængelig"
#: src/pages/part/pricing/PricingPanel.tsx:65
msgid "No Data"
-msgstr ""
+msgstr "Ingen data"
#: src/pages/part/pricing/PricingPanel.tsx:66
msgid "No pricing data available"
-msgstr ""
+msgstr "Ingen tilgængelige prisdata"
#: src/pages/part/pricing/PricingPanel.tsx:77
msgid "Loading pricing data"
@@ -8193,12 +8223,12 @@ msgstr ""
#: src/pages/part/pricing/SaleHistoryPanel.tsx:44
#: src/pages/part/pricing/SaleHistoryPanel.tsx:87
msgid "Sale Price"
-msgstr ""
+msgstr "Salgspris"
#: src/pages/part/pricing/SupplierPricingPanel.tsx:69
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:75
msgid "Supplier Price"
-msgstr ""
+msgstr "Leverandør Pris"
#: src/pages/part/pricing/VariantPricingPanel.tsx:29
#: src/pages/part/pricing/VariantPricingPanel.tsx:94
@@ -8207,17 +8237,17 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:90
msgid "Edit Purchase Order"
-msgstr ""
+msgstr "Rediger Indkøbsordre"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:126
#: src/tables/purchasing/PurchaseOrderTable.tsx:154
#: src/tables/purchasing/PurchaseOrderTable.tsx:167
msgid "Add Purchase Order"
-msgstr ""
+msgstr "Tilføj Indkøbsordre"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:148
msgid "Supplier Reference"
-msgstr ""
+msgstr "Leverandør Reference"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:159
#: src/pages/sales/ReturnOrderDetail.tsx:126
@@ -8234,13 +8264,13 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:197
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272
msgid "Destination"
-msgstr ""
+msgstr "Destination"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:203
#: src/pages/sales/ReturnOrderDetail.tsx:168
#: src/pages/sales/SalesOrderDetail.tsx:162
msgid "Order Currency"
-msgstr ""
+msgstr "Ordre Valuta"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:207
#: src/pages/sales/ReturnOrderDetail.tsx:183
@@ -8252,19 +8282,19 @@ msgstr ""
#: src/pages/sales/ReturnOrderDetail.tsx:175
#: src/pages/sales/SalesOrderDetail.tsx:168
msgid "Total Cost"
-msgstr ""
+msgstr "Pris i alt"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:238
#: src/pages/sales/ReturnOrderDetail.tsx:216
#: src/pages/sales/SalesOrderDetail.tsx:209
msgid "Contact Email"
-msgstr ""
+msgstr "Kontakt E-Mail"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:246
#: src/pages/sales/ReturnOrderDetail.tsx:224
#: src/pages/sales/SalesOrderDetail.tsx:217
msgid "Contact Phone"
-msgstr ""
+msgstr "Kontakt Telefon"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:279
#: src/pages/sales/ReturnOrderDetail.tsx:258
@@ -8285,7 +8315,7 @@ msgstr ""
#: src/pages/sales/ReturnOrderDetail.tsx:312
#: src/pages/sales/SalesOrderDetail.tsx:350
msgid "Order Details"
-msgstr ""
+msgstr "Ordre detaljer"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:340
#: src/pages/purchasing/PurchaseOrderDetail.tsx:349
@@ -8309,7 +8339,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:418
msgid "Cancel Purchase Order"
-msgstr ""
+msgstr "Annuller Indkøbsordre"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:426
msgid "Hold Purchase Order"
@@ -8317,30 +8347,30 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:434
msgid "Complete Purchase Order"
-msgstr ""
+msgstr "Færdiggør Indkøbsordre"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:490
#: src/pages/sales/ReturnOrderDetail.tsx:501
#: src/pages/sales/SalesOrderDetail.tsx:554
msgid "Order Actions"
-msgstr ""
+msgstr "Ordre Handlinger"
#: src/pages/sales/ReturnOrderDetail.tsx:115
#: src/pages/sales/SalesOrderDetail.tsx:105
#: src/pages/sales/SalesOrderShipmentDetail.tsx:132
#: src/tables/sales/SalesOrderTable.tsx:141
msgid "Customer Reference"
-msgstr ""
+msgstr "Kundens Reference"
#: src/pages/sales/ReturnOrderDetail.tsx:196
msgid "Return Address"
-msgstr ""
+msgstr "Retur Adresse"
#: src/pages/sales/ReturnOrderDetail.tsx:202
#: src/pages/sales/SalesOrderDetail.tsx:195
#: src/pages/sales/SalesOrderShipmentDetail.tsx:179
msgid "Not specified"
-msgstr ""
+msgstr "Ikke specificeret"
#: src/pages/sales/ReturnOrderDetail.tsx:349
#~ msgid "Order canceled"
@@ -8348,13 +8378,13 @@ msgstr ""
#: src/pages/sales/ReturnOrderDetail.tsx:394
msgid "Edit Return Order"
-msgstr ""
+msgstr "Rediger Returordre"
#: src/pages/sales/ReturnOrderDetail.tsx:412
#: src/tables/sales/ReturnOrderTable.tsx:154
#: src/tables/sales/ReturnOrderTable.tsx:167
msgid "Add Return Order"
-msgstr ""
+msgstr "Tilføje Returordre"
#: src/pages/sales/ReturnOrderDetail.tsx:421
msgid "Issue Return Order"
@@ -8362,88 +8392,88 @@ msgstr ""
#: src/pages/sales/ReturnOrderDetail.tsx:429
msgid "Cancel Return Order"
-msgstr ""
+msgstr "Annuller Returordre"
#: src/pages/sales/ReturnOrderDetail.tsx:437
msgid "Hold Return Order"
-msgstr ""
+msgstr "Hold Returordre"
#: src/pages/sales/ReturnOrderDetail.tsx:445
msgid "Complete Return Order"
-msgstr ""
+msgstr "Færdiggør Returordre"
#: src/pages/sales/SalesOrderDetail.tsx:154
msgid "Completed Shipments"
-msgstr ""
+msgstr "Færdige Forsendelser"
#: src/pages/sales/SalesOrderDetail.tsx:189
#: src/pages/sales/SalesOrderShipmentDetail.tsx:168
msgid "Shipping Address"
-msgstr ""
+msgstr "Leverings Adresse"
#: src/pages/sales/SalesOrderDetail.tsx:317
msgid "Edit Sales Order"
-msgstr ""
+msgstr "Rediger Salgsordre"
#: src/pages/sales/SalesOrderDetail.tsx:339
#: src/tables/sales/SalesOrderTable.tsx:108
#: src/tables/sales/SalesOrderTable.tsx:121
msgid "Add Sales Order"
-msgstr ""
+msgstr "Tilføj Salgsordre"
#: src/pages/sales/SalesOrderDetail.tsx:397
#: src/tables/sales/SalesOrderTable.tsx:147
msgid "Shipments"
-msgstr ""
+msgstr "Forsendelser"
#: src/pages/sales/SalesOrderDetail.tsx:448
msgid "Issue Sales Order"
-msgstr ""
+msgstr "Udsted Salgsordre"
#: src/pages/sales/SalesOrderDetail.tsx:456
msgid "Cancel Sales Order"
-msgstr ""
+msgstr "Annuller Salgs Ordre"
#: src/pages/sales/SalesOrderDetail.tsx:464
msgid "Hold Sales Order"
-msgstr ""
+msgstr "Hold Salgs Ordre"
#: src/pages/sales/SalesOrderDetail.tsx:472
msgid "Ship Sales Order"
-msgstr ""
+msgstr "Send Salgsordre"
#: src/pages/sales/SalesOrderDetail.tsx:474
msgid "Ship this order?"
-msgstr ""
+msgstr "Send Salgsordre?"
#: src/pages/sales/SalesOrderDetail.tsx:475
msgid "Order shipped"
-msgstr ""
+msgstr "Ordre sendt"
#: src/pages/sales/SalesOrderDetail.tsx:483
msgid "Complete Sales Order"
-msgstr ""
+msgstr "Færdiggør Salg Ordre"
#: src/pages/sales/SalesOrderDetail.tsx:528
msgid "Ship Order"
-msgstr ""
+msgstr "Send ordre"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:140
#: src/tables/sales/SalesOrderShipmentTable.tsx:156
msgid "Shipment Reference"
-msgstr ""
+msgstr "Forsendelse Reference"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:146
msgid "Tracking Number"
-msgstr ""
+msgstr "Sporingsnummer"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:154
msgid "Invoice Number"
-msgstr ""
+msgstr "Faktura Nummer"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:189
msgid "Allocated Items"
-msgstr ""
+msgstr "Allokeret Elementer"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:194
msgid "Checked By"
@@ -8451,14 +8481,14 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:200
msgid "Not checked"
-msgstr ""
+msgstr "Ikke kontrolleret"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:206
#: src/tables/ColumnRenderers.tsx:518
#: src/tables/sales/SalesOrderAllocationTable.tsx:182
#: src/tables/sales/SalesOrderShipmentTable.tsx:189
msgid "Shipment Date"
-msgstr ""
+msgstr "Forsendelse Dato"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:211
#~ msgid "Assigned Items"
@@ -8467,23 +8497,23 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:214
#: src/tables/sales/SalesOrderShipmentTable.tsx:193
msgid "Delivery Date"
-msgstr ""
+msgstr "Leveringsdato"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:253
msgid "Shipment Details"
-msgstr ""
+msgstr "Forsendelse Detaljer"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:292
#: src/pages/sales/SalesOrderShipmentDetail.tsx:406
#: src/tables/sales/SalesOrderShipmentTable.tsx:97
msgid "Edit Shipment"
-msgstr ""
+msgstr "Rediger Forsendelse"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:299
#: src/pages/sales/SalesOrderShipmentDetail.tsx:425
#: src/tables/sales/SalesOrderShipmentTable.tsx:89
msgid "Cancel Shipment"
-msgstr ""
+msgstr "Annuller Forsendelse"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:312
#: src/tables/sales/SalesOrderShipmentTable.tsx:119
@@ -8500,32 +8530,32 @@ msgstr ""
#: src/tables/sales/SalesOrderShipmentTable.tsx:168
#: src/tables/sales/SalesOrderShipmentTable.tsx:299
msgid "Checked"
-msgstr ""
+msgstr "Kontrolleret"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:351
msgid "Not Checked"
-msgstr ""
+msgstr "Ikke Kontrolleret"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:357
#: src/tables/sales/SalesOrderShipmentTable.tsx:175
#: src/tables/sales/SalesOrderShipmentTable.tsx:304
msgid "Shipped"
-msgstr ""
+msgstr "Afsendt"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:363
#: src/tables/sales/SalesOrderShipmentTable.tsx:182
#: src/tables/sales/SalesOrderShipmentTable.tsx:309
#: src/tables/settings/EmailTable.tsx:31
msgid "Delivered"
-msgstr ""
+msgstr "Leveret"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:378
msgid "Send Shipment"
-msgstr ""
+msgstr "Send Forsendelse"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:401
msgid "Shipment Actions"
-msgstr ""
+msgstr "Forsendelses Handlinger"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:410
msgid "Check"
@@ -8533,7 +8563,7 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:411
msgid "Mark shipment as checked"
-msgstr ""
+msgstr "Marker forsendelse som kontrolleret"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:417
msgid "Uncheck"
@@ -8541,103 +8571,103 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:418
msgid "Mark shipment as unchecked"
-msgstr ""
+msgstr "Marker forsendelse som ikke-kontrolleret"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
-msgstr ""
+msgstr "Overordnet Lokation"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
-msgstr ""
+msgstr "Under lokationer"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
-msgstr ""
+msgstr "Lokationstype"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
-msgstr ""
+msgstr "Lokations Detaljer"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
+msgstr "Standard Dele"
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Rediger Lagerlokation"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Flyt elementer til overordnet lokation"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Slet Lager Lokation"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
-msgid "Scan Stock Item"
-msgstr ""
+msgid "Locations Action"
+msgstr "Lokation Handlinger"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr "Handling for underordnede lokation i denne lokation"
+
+#: src/pages/stock/LocationDetail.tsx:316
+msgid "Scan Stock Item"
+msgstr "Scan Lagervare"
+
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
-msgstr ""
+msgstr "Fejl ved scanning af lagervare"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
-msgstr ""
+msgstr "Fejl under scanning af lager lokation"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
-msgstr ""
+msgstr "Lokation Handlinger"
#: src/pages/stock/StockDetail.tsx:147
msgid "Base Part"
-msgstr ""
+msgstr "Basis Del"
#: src/pages/stock/StockDetail.tsx:155
#~ msgid "Link custom barcode to stock item"
@@ -8657,7 +8687,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:206
msgid "Previous serial number"
-msgstr ""
+msgstr "Forrige serienummer"
#: src/pages/stock/StockDetail.tsx:217
#~ msgid "Delete stock item"
@@ -8665,31 +8695,31 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:228
msgid "Find serial number"
-msgstr ""
+msgstr "Find serienummer"
#: src/pages/stock/StockDetail.tsx:234
msgid "Next serial number"
-msgstr ""
+msgstr "Næste serienummer"
#: src/pages/stock/StockDetail.tsx:272
msgid "Allocated to Orders"
-msgstr ""
+msgstr "Allokeret Til Ordrer"
#: src/pages/stock/StockDetail.tsx:305
msgid "Installed In"
-msgstr ""
+msgstr "Installeret I"
#: src/pages/stock/StockDetail.tsx:325
msgid "Parent Item"
-msgstr ""
+msgstr "Overordnet Element"
#: src/pages/stock/StockDetail.tsx:329
msgid "Parent stock item"
-msgstr ""
+msgstr "Overordnet lagervare"
#: src/pages/stock/StockDetail.tsx:335
msgid "Consumed By"
-msgstr ""
+msgstr "Forbrugt Af"
#: src/pages/stock/StockDetail.tsx:432
msgid "Last Stocktake"
@@ -8701,11 +8731,11 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:526
msgid "Stock Details"
-msgstr ""
+msgstr "Lager Detaljer"
#: src/pages/stock/StockDetail.tsx:532
msgid "Stock Tracking"
-msgstr ""
+msgstr "Lager Sporing"
#: src/pages/stock/StockDetail.tsx:571
#~ msgid "Test Data"
@@ -8713,15 +8743,15 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:601
msgid "Installed Items"
-msgstr ""
+msgstr "Installerede Elementer"
#: src/pages/stock/StockDetail.tsx:608
msgid "Child Items"
-msgstr ""
+msgstr "Underordnede Elementer"
#: src/pages/stock/StockDetail.tsx:661
msgid "Edit Stock Item"
-msgstr ""
+msgstr "Rediger Lagervare"
#: src/pages/stock/StockDetail.tsx:671
#: src/tables/stock/StockItemTable.tsx:452
@@ -8740,15 +8770,15 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:703
msgid "Items Created"
-msgstr ""
+msgstr "Elementer Oprettet"
#: src/pages/stock/StockDetail.tsx:704
msgid "Created {n} stock items"
-msgstr ""
+msgstr "Oprettede {n} lagervarer"
#: src/pages/stock/StockDetail.tsx:721
msgid "Delete Stock Item"
-msgstr ""
+msgstr "Slet Lagervare"
#: src/pages/stock/StockDetail.tsx:762
#~ msgid "Return Stock Item"
@@ -8773,19 +8803,19 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:794
msgid "Scan Into Location"
-msgstr ""
+msgstr "Scan Ind I Lokation"
#: src/pages/stock/StockDetail.tsx:852
msgid "Scan into location"
-msgstr ""
+msgstr "Scan ind i lokation"
#: src/pages/stock/StockDetail.tsx:854
msgid "Scan this item into a location"
-msgstr ""
+msgstr "Skan dette element ind på en lokation"
#: src/pages/stock/StockDetail.tsx:866
msgid "Stock Operations"
-msgstr ""
+msgstr "Lager Operationer"
#: src/pages/stock/StockDetail.tsx:868
#~ msgid "Count stock"
@@ -8823,21 +8853,21 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:966
#: src/tables/stock/StockItemTable.tsx:404
msgid "Stale"
-msgstr ""
+msgstr "Forældet"
#: src/pages/stock/StockDetail.tsx:972
#: src/tables/stock/StockItemTable.tsx:398
msgid "Expired"
-msgstr ""
+msgstr "Udløbet"
#: src/pages/stock/StockDetail.tsx:978
msgid "Unavailable"
-msgstr ""
+msgstr "Utilgængelig"
#: src/states/IconState.tsx:47
#: src/states/IconState.tsx:77
msgid "Error loading icon package from server"
-msgstr ""
+msgstr "Fejl ved indlæsning af ikonpakke fra serveren"
#: src/tables/ColumnRenderers.tsx:41
#~ msgid "Part is locked"
@@ -8845,11 +8875,11 @@ msgstr ""
#: src/tables/ColumnRenderers.tsx:68
msgid "Part is not active"
-msgstr ""
+msgstr "Del er ikke aktiv"
#: src/tables/ColumnRenderers.tsx:78
msgid "You are subscribed to notifications for this part"
-msgstr ""
+msgstr "Du abonnerer på notifikationer for denne del"
#: src/tables/ColumnRenderers.tsx:93
#~ msgid "No location set"
@@ -8890,11 +8920,11 @@ msgstr ""
#: src/tables/Filter.tsx:75
msgid "Has Batch Code"
-msgstr ""
+msgstr "Har Batch Kode"
#: src/tables/Filter.tsx:76
msgid "Show items which have a batch code"
-msgstr ""
+msgstr "Vis elementer som har en batch kode"
#: src/tables/Filter.tsx:84
msgid "Filter items by batch code"
@@ -8910,13 +8940,14 @@ msgstr ""
#: src/tables/Filter.tsx:101
msgid "Show items which have a serial number"
-msgstr ""
+msgstr "Vis elementer som har et serienummer"
#: src/tables/Filter.tsx:106
#~ msgid "Show overdue orders"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -8930,7 +8961,7 @@ msgstr ""
#: src/tables/Filter.tsx:118
msgid "Show items with serial numbers less than or equal to a given value"
-msgstr ""
+msgstr "Vis elementer med serienumre mindre end eller lig med en given værdi"
#: src/tables/Filter.tsx:126
msgid "Serial Above"
@@ -8938,20 +8969,20 @@ msgstr ""
#: src/tables/Filter.tsx:127
msgid "Show items with serial numbers greater than or equal to a given value"
-msgstr ""
+msgstr "Vis elementer med serienumre større end eller lig med en given værdi"
#: src/tables/Filter.tsx:136
msgid "Assigned to me"
-msgstr ""
+msgstr "Tildelt til Mig"
#: src/tables/Filter.tsx:137
msgid "Show orders assigned to me"
-msgstr ""
+msgstr "Vis ordrer tildelt mig"
#: src/tables/Filter.tsx:144
#: src/tables/sales/SalesOrderAllocationTable.tsx:88
msgid "Outstanding"
-msgstr ""
+msgstr "Udestående"
#: src/tables/Filter.tsx:145
msgid "Show outstanding items"
@@ -8975,39 +9006,39 @@ msgstr ""
#: src/tables/Filter.tsx:170
msgid "Show items before this date"
-msgstr ""
+msgstr "Vis elementer før denne dato"
#: src/tables/Filter.tsx:178
msgid "Created Before"
-msgstr ""
+msgstr "Oprettet Før"
#: src/tables/Filter.tsx:179
msgid "Show items created before this date"
-msgstr ""
+msgstr "Vis elementer oprettet før denne dato"
#: src/tables/Filter.tsx:187
msgid "Created After"
-msgstr ""
+msgstr "Oprettet Efter"
#: src/tables/Filter.tsx:188
msgid "Show items created after this date"
-msgstr ""
+msgstr "Vis elementer oprettet efter denne dato"
#: src/tables/Filter.tsx:196
msgid "Start Date Before"
-msgstr ""
+msgstr "Start dato før"
#: src/tables/Filter.tsx:197
msgid "Show items with a start date before this date"
-msgstr ""
+msgstr "Vis elementer med en startdato før denne dato"
#: src/tables/Filter.tsx:205
msgid "Start Date After"
-msgstr ""
+msgstr "Start Dato Efter"
#: src/tables/Filter.tsx:206
msgid "Show items with a start date after this date"
-msgstr ""
+msgstr "Vis elementer med en startdato efter denne dato"
#: src/tables/Filter.tsx:214
msgid "Target Date Before"
@@ -9027,7 +9058,7 @@ msgstr ""
#: src/tables/Filter.tsx:232
msgid "Completed Before"
-msgstr ""
+msgstr "Færdiggjort Før"
#: src/tables/Filter.tsx:233
msgid "Show items completed before this date"
@@ -9035,7 +9066,7 @@ msgstr ""
#: src/tables/Filter.tsx:241
msgid "Completed After"
-msgstr ""
+msgstr "Færdiggjort Efter"
#: src/tables/Filter.tsx:242
msgid "Show items completed after this date"
@@ -9043,11 +9074,11 @@ msgstr ""
#: src/tables/Filter.tsx:254
msgid "Has Project Code"
-msgstr ""
+msgstr "Har Projektkode"
#: src/tables/Filter.tsx:255
msgid "Show orders with an assigned project code"
-msgstr ""
+msgstr "Vis ordrer med en tildelt projektkode"
#: src/tables/Filter.tsx:264
msgid "Include Variants"
@@ -9060,59 +9091,59 @@ msgstr ""
#: src/tables/Filter.tsx:275
#: src/tables/part/PartPurchaseOrdersTable.tsx:133
msgid "Filter by order status"
-msgstr ""
+msgstr "Filtrer efter ordrestatus"
#: src/tables/Filter.tsx:287
msgid "Filter by project code"
-msgstr ""
+msgstr "Filtrer efter projekt kode"
#: src/tables/Filter.tsx:320
msgid "Filter by responsible owner"
-msgstr ""
+msgstr "Filtrer efter ansvarlig ejer"
#: src/tables/Filter.tsx:336
#: src/tables/settings/ApiTokenTable.tsx:127
#: src/tables/stock/StockTrackingTable.tsx:191
msgid "Filter by user"
-msgstr ""
+msgstr "Filtrer efter bruger"
#: src/tables/Filter.tsx:348
msgid "Filter by manufacturer"
-msgstr ""
+msgstr "Filtrer efter producent"
#: src/tables/Filter.tsx:361
msgid "Filter by supplier"
-msgstr ""
+msgstr "Filtrer efter leverandører"
#: src/tables/Filter.tsx:374
msgid "Filter by user who created the order"
-msgstr ""
+msgstr "Filtrer efter bruger der oprettede ordren"
#: src/tables/Filter.tsx:382
msgid "Filter by user who issued the order"
-msgstr ""
+msgstr "Filtrer efter bruger der har udstedt ordren"
#: src/tables/Filter.tsx:390
msgid "Filter by part category"
-msgstr ""
+msgstr "Filtrer efter del kategori"
#: src/tables/Filter.tsx:401
msgid "Filter by stock location"
-msgstr ""
+msgstr "Filtrer efter lagerplacering"
#: src/tables/FilterSelectDrawer.tsx:59
msgid "Remove filter"
-msgstr ""
+msgstr "Fjern filter"
#: src/tables/FilterSelectDrawer.tsx:102
#: src/tables/FilterSelectDrawer.tsx:104
#: src/tables/FilterSelectDrawer.tsx:151
msgid "Select filter value"
-msgstr ""
+msgstr "Vælg filter værdi"
#: src/tables/FilterSelectDrawer.tsx:116
msgid "Enter filter value"
-msgstr ""
+msgstr "Indtast filter værdi"
#: src/tables/FilterSelectDrawer.tsx:138
msgid "Select date value"
@@ -9120,11 +9151,11 @@ msgstr ""
#: src/tables/FilterSelectDrawer.tsx:260
msgid "Select filter"
-msgstr ""
+msgstr "Vælg filter"
#: src/tables/FilterSelectDrawer.tsx:261
msgid "Filter"
-msgstr ""
+msgstr "Filter"
#: src/tables/FilterSelectDrawer.tsx:313
#: src/tables/InvenTreeTableHeader.tsx:260
@@ -9133,18 +9164,18 @@ msgstr ""
#: src/tables/FilterSelectDrawer.tsx:346
msgid "Add Filter"
-msgstr ""
+msgstr "Tilføj Filter"
#: src/tables/FilterSelectDrawer.tsx:355
msgid "Clear Filters"
-msgstr ""
+msgstr "Nulstil filtre"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,9 +9187,9 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
-msgstr ""
+msgstr "Server returnerede forkert datatype"
#: src/tables/InvenTreeTable.tsx:535
#~ msgid "Deleted records"
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,13 +9221,13 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
-msgstr ""
+msgstr "Vis detaljer"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
-msgstr ""
+msgstr "Vis {model}"
#: src/tables/InvenTreeTable.tsx:712
#~ msgid "Table filters"
@@ -9208,24 +9239,24 @@ msgstr ""
#: src/tables/InvenTreeTableHeader.tsx:104
msgid "Delete Selected Items"
-msgstr ""
+msgstr "Slet valgte del"
#: src/tables/InvenTreeTableHeader.tsx:108
msgid "Are you sure you want to delete the selected items?"
-msgstr ""
+msgstr "Er du sikker på at du ønsker at slette de valgte varer?"
#: src/tables/InvenTreeTableHeader.tsx:110
#: src/tables/plugin/PluginListTable.tsx:316
msgid "This action cannot be undone"
-msgstr ""
+msgstr "Denne handling kan ikke fortrydes"
#: src/tables/InvenTreeTableHeader.tsx:121
msgid "Items deleted"
-msgstr ""
+msgstr "Elementer slettet"
#: src/tables/InvenTreeTableHeader.tsx:126
msgid "Failed to delete items"
-msgstr ""
+msgstr "Kunne ikke slette elementer"
#: src/tables/InvenTreeTableHeader.tsx:177
msgid "Custom table filters are active"
@@ -9242,7 +9273,7 @@ msgstr ""
#: src/tables/InvenTreeTableHeader.tsx:272
msgid "Active Filters"
-msgstr ""
+msgstr "Aktive Filtre"
#: src/tables/TableHoverCard.tsx:35
#~ msgid "item-{idx}"
@@ -9258,11 +9289,11 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:118
msgid "Part Information"
-msgstr ""
+msgstr "Del Information"
#: src/tables/bom/BomTable.tsx:121
msgid "This BOM item has not been validated"
-msgstr ""
+msgstr "Dette Stykliste element er ikke blevet valideret"
#: src/tables/bom/BomTable.tsx:240
msgid "Substitutes"
@@ -9287,12 +9318,12 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:277
#: src/tables/part/PartTable.tsx:145
msgid "External stock"
-msgstr ""
+msgstr "Ekstern Lager"
#: src/tables/bom/BomTable.tsx:323
#: src/tables/build/BuildLineTable.tsx:240
msgid "Includes substitute stock"
-msgstr ""
+msgstr "Inkluderer erstatningsbeholdning"
#: src/tables/bom/BomTable.tsx:331
#~ msgid "Edit Bom Item"
@@ -9366,7 +9397,7 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:440
msgid "Show items with available stock"
-msgstr ""
+msgstr "Vis varer med disponibelt lager"
#: src/tables/bom/BomTable.tsx:445
msgid "Show items on order"
@@ -9374,7 +9405,7 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:449
msgid "Validated"
-msgstr ""
+msgstr "Valideret"
#: src/tables/bom/BomTable.tsx:450
msgid "Show validated items"
@@ -9429,44 +9460,44 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:497
msgid "Import BOM Data"
-msgstr ""
+msgstr "Importere Stykliste Data"
#: src/tables/bom/BomTable.tsx:507
#: src/tables/bom/BomTable.tsx:631
msgid "Add BOM Item"
-msgstr ""
+msgstr "Tilføj stykliste element"
#: src/tables/bom/BomTable.tsx:512
msgid "BOM item created"
-msgstr ""
+msgstr "Styklistevare oprette"
#: src/tables/bom/BomTable.tsx:519
msgid "Edit BOM Item"
-msgstr ""
+msgstr "Rediger stykliste element"
#: src/tables/bom/BomTable.tsx:521
msgid "BOM item updated"
-msgstr ""
+msgstr "Styklistevare opdateret"
#: src/tables/bom/BomTable.tsx:528
msgid "Delete BOM Item"
-msgstr ""
+msgstr "Slet styklistevare"
#: src/tables/bom/BomTable.tsx:529
msgid "BOM item deleted"
-msgstr ""
+msgstr "Styklistevare slettet"
#: src/tables/bom/BomTable.tsx:549
msgid "BOM item validated"
-msgstr ""
+msgstr "Styklistevare valideret"
#: src/tables/bom/BomTable.tsx:558
msgid "Failed to validate BOM item"
-msgstr ""
+msgstr "Kunne ikke validere styklistevare"
#: src/tables/bom/BomTable.tsx:570
msgid "View BOM"
-msgstr ""
+msgstr "Vis stykliste"
#: src/tables/bom/BomTable.tsx:581
msgid "Validate BOM Line"
@@ -9478,25 +9509,25 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:625
msgid "Add BOM Items"
-msgstr ""
+msgstr "Tilføj styklistevare"
#: src/tables/bom/BomTable.tsx:633
msgid "Add a single BOM item"
-msgstr ""
+msgstr "Tilføj et enkelt Stykliste element"
#: src/tables/bom/BomTable.tsx:637
#: src/tables/general/ParameterTable.tsx:206
#: src/tables/part/PartTable.tsx:546
msgid "Import from File"
-msgstr ""
+msgstr "Importer fra fil"
#: src/tables/bom/BomTable.tsx:639
msgid "Import BOM items from a file"
-msgstr ""
+msgstr "Importer Stykliste elementer fra en fil"
#: src/tables/bom/BomTable.tsx:662
msgid "Bill of materials cannot be edited, as the part is locked"
-msgstr ""
+msgstr "Styklisten kan ikke redigeres, da delen er låst"
#: src/tables/bom/UsedInTable.tsx:34
#: src/tables/build/BuildLineTable.tsx:208
@@ -9515,7 +9546,7 @@ msgstr ""
#: src/tables/part/PartTable.tsx:239
#: src/tables/part/PartVariantTable.tsx:30
msgid "Trackable"
-msgstr ""
+msgstr "Sporbar"
#: src/tables/bom/UsedInTable.tsx:96
msgid "Show trackable assemblies"
@@ -9545,7 +9576,7 @@ msgstr ""
#: src/tables/sales/SalesOrderAllocationTable.tsx:122
#: src/tables/sales/SalesOrderShipmentTable.tsx:151
msgid "Order Status"
-msgstr ""
+msgstr "Ordre status"
#: src/tables/build/BuildAllocatedStockTable.tsx:164
#: src/tables/build/BuildLineTable.tsx:651
@@ -9564,7 +9595,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:664
#: src/tables/sales/SalesOrderAllocationTable.tsx:218
msgid "Remove Allocated Stock"
-msgstr ""
+msgstr "Fjern Allokeret Lager"
#: src/tables/build/BuildAllocatedStockTable.tsx:180
#: src/tables/build/BuildLineTable.tsx:663
@@ -9575,17 +9606,17 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:669
#: src/tables/sales/SalesOrderAllocationTable.tsx:221
msgid "Are you sure you want to remove this allocated stock from the order?"
-msgstr ""
+msgstr "Er du sikker på, at du vil fjerne denne allokerede lager fra ordren?"
#: src/tables/build/BuildAllocatedStockTable.tsx:242
msgid "Consume"
-msgstr ""
+msgstr "Forbrug"
#: src/tables/build/BuildAllocatedStockTable.tsx:259
#: src/tables/build/BuildLineTable.tsx:112
#: src/tables/sales/SalesOrderAllocationTable.tsx:248
msgid "Remove allocated stock"
-msgstr ""
+msgstr "Fjern allokeret lager"
#: src/tables/build/BuildLineTable.tsx:59
#~ msgid "Show lines with available stock"
@@ -9640,7 +9671,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:259
#: src/tables/sales/SalesOrderLineItemTable.tsx:172
msgid "In production"
-msgstr ""
+msgstr "I produktion"
#: src/tables/build/BuildLineTable.tsx:287
msgid "Insufficient stock"
@@ -9674,7 +9705,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:442
msgid "BOM Information"
-msgstr ""
+msgstr "Stykliste Information"
#: src/tables/build/BuildLineTable.tsx:516
#: src/tables/part/PartBuildAllocationsTable.tsx:102
@@ -9697,7 +9728,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:597
msgid "Automatically allocate stock to this build according to the selected options"
-msgstr ""
+msgstr "Automatisk tildel lager til dette byg, i henhold til de valgte indstillinger"
#: src/tables/build/BuildLineTable.tsx:617
#: src/tables/build/BuildLineTable.tsx:631
@@ -9727,7 +9758,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:791
#: src/tables/sales/SalesOrderLineItemTable.tsx:487
msgid "View Part"
-msgstr ""
+msgstr "Vis Del"
#: src/tables/build/BuildOrderTable.tsx:116
#~ msgid "Cascade"
@@ -9775,20 +9806,20 @@ msgstr ""
#: src/tables/sales/ReturnOrderTable.tsx:85
#: src/tables/sales/SalesOrderTable.tsx:86
msgid "Has Start Date"
-msgstr ""
+msgstr "Har startdato"
#: src/tables/build/BuildOrderTable.tsx:173
#: src/tables/purchasing/PurchaseOrderTable.tsx:90
#: src/tables/sales/ReturnOrderTable.tsx:86
#: src/tables/sales/SalesOrderTable.tsx:87
msgid "Show orders with a start date"
-msgstr ""
+msgstr "Vis ordrer med en startdato"
#: src/tables/build/BuildOrderTable.tsx:179
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -9834,15 +9865,15 @@ msgstr ""
#: src/tables/build/BuildOutputTable.tsx:453
msgid "Scrap selected outputs"
-msgstr ""
+msgstr "Skrot valgte outputs"
#: src/tables/build/BuildOutputTable.tsx:464
msgid "Cancel selected outputs"
-msgstr ""
+msgstr "Annuller valgte output"
#: src/tables/build/BuildOutputTable.tsx:494
msgid "Allocate"
-msgstr ""
+msgstr "Allokere"
#: src/tables/build/BuildOutputTable.tsx:495
msgid "Allocate stock to build output"
@@ -9870,15 +9901,15 @@ msgstr ""
#: src/tables/build/BuildOutputTable.tsx:550
msgid "Scrap"
-msgstr ""
+msgstr "Skrot"
#: src/tables/build/BuildOutputTable.tsx:551
msgid "Scrap build output"
-msgstr ""
+msgstr "Skrot bygge output"
#: src/tables/build/BuildOutputTable.tsx:561
msgid "Cancel build output"
-msgstr ""
+msgstr "Annuller bygge output"
#: src/tables/build/BuildOutputTable.tsx:610
msgid "Allocated Lines"
@@ -9886,7 +9917,7 @@ msgstr ""
#: src/tables/build/BuildOutputTable.tsx:625
msgid "Required Tests"
-msgstr ""
+msgstr "Påkrævede Test"
#: src/tables/build/BuildOutputTable.tsx:700
msgid "External Build"
@@ -9899,28 +9930,28 @@ msgstr ""
#: src/tables/company/AddressTable.tsx:122
#: src/tables/company/AddressTable.tsx:187
msgid "Add Address"
-msgstr ""
+msgstr "Tilføj Adresse"
#: src/tables/company/AddressTable.tsx:127
msgid "Address created"
-msgstr ""
+msgstr "Adresse oprettet"
#: src/tables/company/AddressTable.tsx:136
msgid "Edit Address"
-msgstr ""
+msgstr "Rediger Adresse"
#: src/tables/company/AddressTable.tsx:144
msgid "Delete Address"
-msgstr ""
+msgstr "Slet Adresse"
#: src/tables/company/AddressTable.tsx:145
msgid "Are you sure you want to delete this address?"
-msgstr ""
+msgstr "Er du sikker på at du vil slette denne adresse?"
#: src/tables/company/CompanyTable.tsx:70
#: src/tables/company/CompanyTable.tsx:120
msgid "Add Company"
-msgstr ""
+msgstr "Tilføj firma"
#: src/tables/company/CompanyTable.tsx:71
#~ msgid "New Company"
@@ -9928,15 +9959,15 @@ msgstr ""
#: src/tables/company/CompanyTable.tsx:92
msgid "Show active companies"
-msgstr ""
+msgstr "Vis aktive virksomheder"
#: src/tables/company/CompanyTable.tsx:97
msgid "Show companies which are suppliers"
-msgstr ""
+msgstr "Vis virksomheder, som er leverandører"
#: src/tables/company/CompanyTable.tsx:102
msgid "Show companies which are manufacturers"
-msgstr ""
+msgstr "Vis virksomheder, som er producenter"
#: src/tables/company/CompanyTable.tsx:107
msgid "Show companies which are customers"
@@ -9944,23 +9975,23 @@ msgstr ""
#: src/tables/company/ContactTable.tsx:99
msgid "Edit Contact"
-msgstr ""
+msgstr "Redigere Kontakt"
#: src/tables/company/ContactTable.tsx:106
msgid "Add Contact"
-msgstr ""
+msgstr "Tilføj kontakt"
#: src/tables/company/ContactTable.tsx:117
msgid "Delete Contact"
-msgstr ""
+msgstr "Slet Kontakt"
#: src/tables/company/ContactTable.tsx:158
msgid "Add contact"
-msgstr ""
+msgstr "Tilføj Kontakt"
#: src/tables/general/AttachmentTable.tsx:108
msgid "Uploading file {filename}"
-msgstr ""
+msgstr "Uploader filen {filename}"
#: src/tables/general/AttachmentTable.tsx:139
#~ msgid "File uploaded"
@@ -9973,23 +10004,23 @@ msgstr ""
#: src/tables/general/AttachmentTable.tsx:160
#: src/tables/general/AttachmentTable.tsx:174
msgid "Uploading File"
-msgstr ""
+msgstr "Uploader filen"
#: src/tables/general/AttachmentTable.tsx:185
msgid "File Uploaded"
-msgstr ""
+msgstr "Filen Uploadet"
#: src/tables/general/AttachmentTable.tsx:186
msgid "File {name} uploaded successfully"
-msgstr ""
+msgstr "Filen {name} blev uploadet"
#: src/tables/general/AttachmentTable.tsx:202
msgid "File could not be uploaded"
-msgstr ""
+msgstr "Filen kunne ikke uploades"
#: src/tables/general/AttachmentTable.tsx:253
msgid "Upload Attachment"
-msgstr ""
+msgstr "Upload Vedhæftning"
#: src/tables/general/AttachmentTable.tsx:254
#~ msgid "Upload attachment"
@@ -9997,11 +10028,11 @@ msgstr ""
#: src/tables/general/AttachmentTable.tsx:263
msgid "Edit Attachment"
-msgstr ""
+msgstr "Rediger Vedhæftning"
#: src/tables/general/AttachmentTable.tsx:277
msgid "Delete Attachment"
-msgstr ""
+msgstr "Slet vedhæftning"
#: src/tables/general/AttachmentTable.tsx:287
msgid "Is Link"
@@ -10021,15 +10052,15 @@ msgstr ""
#: src/tables/general/AttachmentTable.tsx:302
msgid "Add attachment"
-msgstr ""
+msgstr "Tilføj vedhæftning"
#: src/tables/general/AttachmentTable.tsx:313
msgid "Add external link"
-msgstr ""
+msgstr "Tilføj eksternt link"
#: src/tables/general/AttachmentTable.tsx:361
msgid "No attachments found"
-msgstr ""
+msgstr "Ingen vedhæftning fundet"
#: src/tables/general/AttachmentTable.tsx:400
msgid "Drag attachment file here to upload"
@@ -10041,15 +10072,15 @@ msgstr ""
#: src/tables/general/BarcodeScanTable.tsx:50
msgid "Model"
-msgstr ""
+msgstr "Model"
#: src/tables/general/BarcodeScanTable.tsx:75
msgid "View Item"
-msgstr ""
+msgstr "Vis varer"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10094,65 +10125,65 @@ msgstr ""
#: src/tables/general/ParameterTable.tsx:154
msgid "Import Parameters"
-msgstr ""
+msgstr "Importer Parametre"
#: src/tables/general/ParameterTable.tsx:164
#: src/tables/general/ParametricDataTable.tsx:261
#: src/tables/general/ParametricDataTable.tsx:392
msgid "Add Parameter"
-msgstr ""
+msgstr "Tilføj Parameter"
#: src/tables/general/ParameterTable.tsx:175
#: src/tables/general/ParameterTable.tsx:222
#: src/tables/general/ParametricDataTable.tsx:285
msgid "Edit Parameter"
-msgstr ""
+msgstr "Rediger Parameter"
#: src/tables/general/ParameterTable.tsx:183
#: src/tables/general/ParameterTable.tsx:230
msgid "Delete Parameter"
-msgstr ""
+msgstr "Slet Parameter"
#: src/tables/general/ParameterTable.tsx:191
msgid "Add Parameters"
-msgstr ""
+msgstr "Tilføj Parameter"
#: src/tables/general/ParameterTable.tsx:197
msgid "Create Parameter"
-msgstr ""
+msgstr "Opret Parameter"
#: src/tables/general/ParameterTable.tsx:199
msgid "Create a new parameter"
-msgstr ""
+msgstr "Opret ny parameter"
#: src/tables/general/ParameterTable.tsx:208
msgid "Import parameters from a file"
-msgstr ""
+msgstr "Importer parametre fra en fil"
#: src/tables/general/ParameterTemplateTable.tsx:48
#: src/tables/general/ParameterTemplateTable.tsx:197
msgid "Add Parameter Template"
-msgstr ""
+msgstr "Tilføj Parameter Skabelon"
#: src/tables/general/ParameterTemplateTable.tsx:64
msgid "Duplicate Parameter Template"
-msgstr ""
+msgstr "Dupliker Parameter Skabelon"
#: src/tables/general/ParameterTemplateTable.tsx:78
msgid "Delete Parameter Template"
-msgstr ""
+msgstr "Slet Parameter Skabelon"
#: src/tables/general/ParameterTemplateTable.tsx:85
msgid "Edit Parameter Template"
-msgstr ""
+msgstr "Rediger Parameter Skabelon"
#: src/tables/general/ParameterTemplateTable.tsx:138
msgid "Checkbox"
-msgstr ""
+msgstr "Tjekboks"
#: src/tables/general/ParameterTemplateTable.tsx:139
msgid "Show checkbox templates"
-msgstr ""
+msgstr "Vis tjekboks skabeloner"
#: src/tables/general/ParameterTemplateTable.tsx:143
msgid "Has choices"
@@ -10160,7 +10191,7 @@ msgstr ""
#: src/tables/general/ParameterTemplateTable.tsx:144
msgid "Show templates with choices"
-msgstr ""
+msgstr "Vis skabeloner med valgmuligheder"
#: src/tables/general/ParameterTemplateTable.tsx:148
#: src/tables/part/PartTable.tsx:245
@@ -10169,11 +10200,11 @@ msgstr ""
#: src/tables/general/ParameterTemplateTable.tsx:149
msgid "Show templates with units"
-msgstr ""
+msgstr "Vis skabeloner med enheder"
#: src/tables/general/ParameterTemplateTable.tsx:154
msgid "Show enabled templates"
-msgstr ""
+msgstr "Vis aktiverede skabeloner"
#: src/tables/general/ParameterTemplateTable.tsx:158
#: src/tables/settings/ImportSessionTable.tsx:111
@@ -10187,15 +10218,15 @@ msgstr ""
#: src/tables/general/ParametricDataTable.tsx:79
msgid "Click to edit"
-msgstr ""
+msgstr "Klik for at redigere"
#: src/tables/general/ParametricDataTableFilters.tsx:36
msgid "True"
-msgstr ""
+msgstr "Sand"
#: src/tables/general/ParametricDataTableFilters.tsx:37
msgid "False"
-msgstr ""
+msgstr "Falsk"
#: src/tables/general/ParametricDataTableFilters.tsx:47
#: src/tables/general/ParametricDataTableFilters.tsx:80
@@ -10204,7 +10235,7 @@ msgstr ""
#: src/tables/general/ParametricDataTableFilters.tsx:100
msgid "Enter a value"
-msgstr ""
+msgstr "Indtast en værdi"
#: src/tables/machine/MachineListTable.tsx:133
msgid "Machine restarted"
@@ -10214,7 +10245,7 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:297
#: src/tables/machine/MachineListTable.tsx:729
msgid "Edit machine"
-msgstr ""
+msgstr "Rediger Maskine"
#: src/tables/machine/MachineListTable.tsx:235
#~ msgid "Are you sure you want to remove the machine \"{0}\"?"
@@ -10223,26 +10254,26 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:249
#: src/tables/machine/MachineListTable.tsx:301
msgid "Delete machine"
-msgstr ""
+msgstr "Slet Maskine"
#: src/tables/machine/MachineListTable.tsx:250
#: src/tables/machine/MachineListTable.tsx:692
msgid "Machine successfully deleted."
-msgstr ""
+msgstr "Maskinen blev slettet."
#: src/tables/machine/MachineListTable.tsx:255
#: src/tables/machine/MachineListTable.tsx:697
msgid "Are you sure you want to remove this machine?"
-msgstr ""
+msgstr "Er du sikker på, at du vil fjerne denne maskine?"
#: src/tables/machine/MachineListTable.tsx:285
msgid "Machine"
-msgstr ""
+msgstr "Maskine"
#: src/tables/machine/MachineListTable.tsx:290
#: src/tables/machine/MachineListTable.tsx:568
msgid "Restart required"
-msgstr ""
+msgstr "Genstart påkrævet"
#: src/tables/machine/MachineListTable.tsx:291
#~ msgid "Machine information"
@@ -10254,15 +10285,15 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:306
msgid "Restart"
-msgstr ""
+msgstr "Genstart"
#: src/tables/machine/MachineListTable.tsx:308
msgid "Restart machine"
-msgstr ""
+msgstr "Genstart maskine"
#: src/tables/machine/MachineListTable.tsx:310
msgid "manual restart required"
-msgstr ""
+msgstr "Manuel genstart påkrævet"
#: src/tables/machine/MachineListTable.tsx:315
#~ msgid "Machine Information"
@@ -10270,7 +10301,7 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:343
msgid "General"
-msgstr ""
+msgstr "Generelt"
#: src/tables/machine/MachineListTable.tsx:353
#: src/tables/machine/MachineListTable.tsx:804
@@ -10288,11 +10319,11 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:410
#: src/tables/machine/MachineTypeTable.tsx:305
msgid "No errors reported"
-msgstr ""
+msgstr "Ingen fejl rapporteret"
#: src/tables/machine/MachineListTable.tsx:431
msgid "Properties"
-msgstr ""
+msgstr "Egenskaber"
#: src/tables/machine/MachineListTable.tsx:494
#~ msgid "Create machine"
@@ -10300,7 +10331,7 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:521
msgid "Driver Settings"
-msgstr ""
+msgstr "Driver Indstillinger"
#: src/tables/machine/MachineListTable.tsx:561
#~ msgid "Machine detail"
@@ -10308,32 +10339,32 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:648
msgid "Add Machine"
-msgstr ""
+msgstr "Tilføj Maskine"
#: src/tables/machine/MachineListTable.tsx:691
#: src/tables/machine/MachineListTable.tsx:736
msgid "Delete Machine"
-msgstr ""
+msgstr "Slet Maskine"
#: src/tables/machine/MachineListTable.tsx:704
msgid "Edit Machine"
-msgstr ""
+msgstr "Rediger Maskine"
#: src/tables/machine/MachineListTable.tsx:718
msgid "Restart Machine"
-msgstr ""
+msgstr "Genstart maskine"
#: src/tables/machine/MachineListTable.tsx:749
msgid "Add machine"
-msgstr ""
+msgstr "Tilføj Maskine"
#: src/tables/machine/MachineListTable.tsx:765
msgid "Machine Detail"
-msgstr ""
+msgstr "Maskine Detaljer"
#: src/tables/machine/MachineListTable.tsx:813
msgid "Driver"
-msgstr ""
+msgstr "Driver"
#: src/tables/machine/MachineTypeTable.tsx:72
msgid "Driver Type"
@@ -10349,7 +10380,7 @@ msgstr ""
#: src/tables/machine/MachineTypeTable.tsx:126
msgid "Not Found"
-msgstr ""
+msgstr "Ikke Fundet"
#: src/tables/machine/MachineTypeTable.tsx:129
msgid "Machine type not found."
@@ -10371,16 +10402,16 @@ msgstr ""
#: src/tables/machine/MachineTypeTable.tsx:165
#: src/tables/machine/MachineTypeTable.tsx:274
msgid "Provider plugin"
-msgstr ""
+msgstr "Leverandør plugin"
#: src/tables/machine/MachineTypeTable.tsx:177
#: src/tables/machine/MachineTypeTable.tsx:286
msgid "Provider file"
-msgstr ""
+msgstr "Leverandør fil"
#: src/tables/machine/MachineTypeTable.tsx:192
msgid "Available Drivers"
-msgstr ""
+msgstr "Tilgængelige Drivere"
#: src/tables/machine/MachineTypeTable.tsx:232
msgid "Machine driver not found."
@@ -10416,17 +10447,17 @@ msgstr ""
#: src/tables/notifications/NotificationTable.tsx:26
msgid "Age"
-msgstr ""
+msgstr "Alder"
#: src/tables/notifications/NotificationTable.tsx:37
msgid "Notification"
-msgstr ""
+msgstr "Notifikation"
#: src/tables/notifications/NotificationTable.tsx:41
#: src/tables/plugin/PluginErrorTable.tsx:37
#: src/tables/settings/ErrorTable.tsx:50
msgid "Message"
-msgstr ""
+msgstr "Besked"
#: src/tables/part/ParametricPartTable.tsx:20
msgid "Show active parts"
@@ -10467,9 +10498,9 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
-msgstr ""
+msgstr "Vis Byggeordre"
#: src/tables/part/PartCategoryTable.tsx:51
msgid "You are subscribed to notifications for this category"
@@ -10478,53 +10509,53 @@ msgstr ""
#: src/tables/part/PartCategoryTable.tsx:84
#: src/tables/part/PartTable.tsx:221
msgid "Include Subcategories"
-msgstr ""
+msgstr "Inkluder underkategorier"
#: src/tables/part/PartCategoryTable.tsx:85
msgid "Include subcategories in results"
-msgstr ""
+msgstr "Inkluder underkategorier i resultaterne"
#: src/tables/part/PartCategoryTable.tsx:90
msgid "Show structural categories"
-msgstr ""
+msgstr "Vis strukturelle kategorier"
#: src/tables/part/PartCategoryTable.tsx:95
msgid "Show categories to which the user is subscribed"
-msgstr ""
+msgstr "Vis kategorier, som brugeren abonnerer på"
#: src/tables/part/PartCategoryTable.tsx:104
msgid "New Part Category"
-msgstr ""
+msgstr "Ny Del Kategori"
#: src/tables/part/PartCategoryTable.tsx:130
msgid "Set Parent Category"
-msgstr ""
+msgstr "Sæt Overordnet Kategori"
#: src/tables/part/PartCategoryTable.tsx:148
#: src/tables/stock/StockLocationTable.tsx:147
msgid "Set Parent"
-msgstr ""
+msgstr "Sæt Overordnet"
#: src/tables/part/PartCategoryTable.tsx:150
msgid "Set parent category for the selected items"
-msgstr ""
+msgstr "Sæt overordnet kategori for de valgte elementer"
#: src/tables/part/PartCategoryTable.tsx:161
msgid "Add Part Category"
-msgstr ""
+msgstr "Tilføj Del Kategori"
#: src/tables/part/PartCategoryTemplateTable.tsx:49
#: src/tables/part/PartCategoryTemplateTable.tsx:143
msgid "Add Category Parameter"
-msgstr ""
+msgstr "Tilføj Kategori Parameter"
#: src/tables/part/PartCategoryTemplateTable.tsx:57
msgid "Edit Category Parameter"
-msgstr ""
+msgstr "Rediger Kategori Parameter"
#: src/tables/part/PartCategoryTemplateTable.tsx:65
msgid "Delete Category Parameter"
-msgstr ""
+msgstr "Slet Kategori Parameter"
#: src/tables/part/PartCategoryTemplateTable.tsx:93
#~ msgid "[{0}]"
@@ -10563,7 +10594,7 @@ msgstr ""
#: src/tables/part/PartSalesAllocationsTable.tsx:90
#: src/tables/sales/SalesOrderShipmentTable.tsx:263
msgid "View Sales Order"
-msgstr ""
+msgstr "Vis Salgsordre"
#: src/tables/part/PartTable.tsx:99
msgid "Minimum stock"
@@ -10571,11 +10602,11 @@ msgstr ""
#: src/tables/part/PartTable.tsx:198
msgid "Filter by part active status"
-msgstr ""
+msgstr "Filtrer efter aktiv emnestatus"
#: src/tables/part/PartTable.tsx:204
msgid "Filter by part locked status"
-msgstr ""
+msgstr "Filtrer efter låset emnestatus"
#: src/tables/part/PartTable.tsx:210
msgid "Filter by assembly attribute"
@@ -10583,7 +10614,7 @@ msgstr ""
#: src/tables/part/PartTable.tsx:215
msgid "BOM Valid"
-msgstr ""
+msgstr "Stykliste Valid"
#: src/tables/part/PartTable.tsx:216
msgid "Filter by parts with a valid BOM"
@@ -10623,11 +10654,11 @@ msgstr ""
#: src/tables/part/PartTable.tsx:258
msgid "Filter by parts which have stock"
-msgstr ""
+msgstr "Filtrer efter dele, der har lager"
#: src/tables/part/PartTable.tsx:264
msgid "Filter by parts which have low stock"
-msgstr ""
+msgstr "Filtrer efter dele med lavt lager"
#: src/tables/part/PartTable.tsx:269
msgid "Purchaseable"
@@ -10655,11 +10686,11 @@ msgstr ""
#: src/tables/part/PartTable.tsx:291
msgid "Is Template"
-msgstr ""
+msgstr "Er Skabelon"
#: src/tables/part/PartTable.tsx:292
msgid "Filter by parts which are templates"
-msgstr ""
+msgstr "Filtrer efter dele, som er skabeloner"
#: src/tables/part/PartTable.tsx:297
msgid "Is Variant"
@@ -10679,7 +10710,7 @@ msgstr ""
#: src/tables/part/PartTable.tsx:308
msgid "Has Revisions"
-msgstr ""
+msgstr "Har Revisioner"
#: src/tables/part/PartTable.tsx:309
msgid "Filter by parts which have revisions"
@@ -10707,7 +10738,7 @@ msgstr ""
#: src/tables/part/PartTable.tsx:377
msgid "Import Parts"
-msgstr ""
+msgstr "Importer Dele"
#: src/tables/part/PartTable.tsx:464
#: src/tables/part/PartTable.tsx:512
@@ -10724,27 +10755,27 @@ msgstr ""
#: src/tables/part/PartTable.tsx:534
msgid "Add Parts"
-msgstr ""
+msgstr "Tilføj Dele"
#: src/tables/part/PartTable.tsx:540
msgid "Create Part"
-msgstr ""
+msgstr "Opret Del"
#: src/tables/part/PartTable.tsx:542
msgid "Create a new part"
-msgstr ""
+msgstr "Opret ny del"
#: src/tables/part/PartTable.tsx:548
msgid "Import parts from a file"
-msgstr ""
+msgstr "Importer dele fra en fil"
#: src/tables/part/PartTable.tsx:553
msgid "Import from Supplier"
-msgstr ""
+msgstr "Importer fra leverandør"
#: src/tables/part/PartTable.tsx:555
msgid "Import parts from a supplier plugin"
-msgstr ""
+msgstr "Importer dele fra leverandør plugin"
#: src/tables/part/PartTestResultTable.tsx:103
#: src/tables/part/PartTestResultTable.tsx:181
@@ -10754,25 +10785,25 @@ msgstr ""
#: src/tables/stock/StockItemTestResultTable.tsx:368
#: src/tables/stock/StockItemTestResultTable.tsx:429
msgid "Add Test Result"
-msgstr ""
+msgstr "Tilføj Testresultat"
#: src/tables/part/PartTestResultTable.tsx:110
#: src/tables/stock/StockItemTestResultTable.tsx:298
msgid "Test result added"
-msgstr ""
+msgstr "Testresultater tilføjet"
#: src/tables/part/PartTestResultTable.tsx:142
msgid "Add Test Results"
-msgstr ""
+msgstr "Tilføj Testresultater"
#: src/tables/part/PartTestResultTable.tsx:152
msgid "Test results added"
-msgstr ""
+msgstr "Testresultater tilføjet"
#: src/tables/part/PartTestResultTable.tsx:180
#: src/tables/stock/StockItemTestResultTable.tsx:197
msgid "No Result"
-msgstr ""
+msgstr "Ingen Resultater"
#: src/tables/part/PartTestResultTable.tsx:306
msgid "Show build outputs currently in production"
@@ -10784,23 +10815,23 @@ msgstr ""
#: src/tables/part/PartTestTemplateTable.tsx:70
msgid "Template Details"
-msgstr ""
+msgstr "Skabelon Detaljer"
#: src/tables/part/PartTestTemplateTable.tsx:80
msgid "Results"
-msgstr ""
+msgstr "Resultater"
#: src/tables/part/PartTestTemplateTable.tsx:113
msgid "Show required tests"
-msgstr ""
+msgstr "Vis påkrævede tests"
#: src/tables/part/PartTestTemplateTable.tsx:118
msgid "Show enabled tests"
-msgstr ""
+msgstr "Vis aktiverede tests"
#: src/tables/part/PartTestTemplateTable.tsx:122
msgid "Requires Value"
-msgstr ""
+msgstr "Kræver Værdi"
#: src/tables/part/PartTestTemplateTable.tsx:123
msgid "Show tests that require a value"
@@ -10808,11 +10839,11 @@ msgstr ""
#: src/tables/part/PartTestTemplateTable.tsx:127
msgid "Requires Attachment"
-msgstr ""
+msgstr "Kræver Vedhæftning"
#: src/tables/part/PartTestTemplateTable.tsx:128
msgid "Show tests that require an attachment"
-msgstr ""
+msgstr "Vis tests der kræver en vedhæftet fil"
#: src/tables/part/PartTestTemplateTable.tsx:132
msgid "Include Inherited"
@@ -10824,32 +10855,32 @@ msgstr ""
#: src/tables/part/PartTestTemplateTable.tsx:137
msgid "Has Results"
-msgstr ""
+msgstr "Har Resultater"
#: src/tables/part/PartTestTemplateTable.tsx:138
msgid "Show tests which have recorded results"
-msgstr ""
+msgstr "Vis tests som har registreret resultater"
#: src/tables/part/PartTestTemplateTable.tsx:160
#: src/tables/part/PartTestTemplateTable.tsx:243
msgid "Add Test Template"
-msgstr ""
+msgstr "Tilføj Test Skabelon"
#: src/tables/part/PartTestTemplateTable.tsx:176
msgid "Edit Test Template"
-msgstr ""
+msgstr "Rediger Test Skabelon"
#: src/tables/part/PartTestTemplateTable.tsx:187
msgid "Delete Test Template"
-msgstr ""
+msgstr "Slet Test Skabelon"
#: src/tables/part/PartTestTemplateTable.tsx:189
msgid "This action cannot be reversed"
-msgstr ""
+msgstr "Denne handling kan ikke fortrydes"
#: src/tables/part/PartTestTemplateTable.tsx:191
msgid "Any tests results associated with this template will be deleted"
-msgstr ""
+msgstr "Alle testresultater, der er knyttet til denne skabelon, vil blive slettet"
#: src/tables/part/PartTestTemplateTable.tsx:209
msgid "View Parent Part"
@@ -10857,11 +10888,11 @@ msgstr ""
#: src/tables/part/PartTestTemplateTable.tsx:263
msgid "Part templates cannot be edited, as the part is locked"
-msgstr ""
+msgstr "Del skabeloner kan ikke redigeres, da delen er låst"
#: src/tables/part/PartThumbTable.tsx:222
msgid "Select"
-msgstr ""
+msgstr "Vælg"
#: src/tables/part/PartVariantTable.tsx:16
msgid "Show active variants"
@@ -10869,11 +10900,11 @@ msgstr ""
#: src/tables/part/PartVariantTable.tsx:20
msgid "Template"
-msgstr ""
+msgstr "Skabelon"
#: src/tables/part/PartVariantTable.tsx:21
msgid "Show template variants"
-msgstr ""
+msgstr "Vis skabelonvarianter"
#: src/tables/part/PartVariantTable.tsx:26
msgid "Show virtual variants"
@@ -10886,7 +10917,7 @@ msgstr ""
#: src/tables/part/RelatedPartTable.tsx:104
#: src/tables/part/RelatedPartTable.tsx:137
msgid "Add Related Part"
-msgstr ""
+msgstr "Tilføj Relateret Del"
#: src/tables/part/RelatedPartTable.tsx:109
#~ msgid "Add related part"
@@ -10894,45 +10925,45 @@ msgstr ""
#: src/tables/part/RelatedPartTable.tsx:119
msgid "Delete Related Part"
-msgstr ""
+msgstr "Slet Relateret Del"
#: src/tables/part/RelatedPartTable.tsx:126
msgid "Edit Related Part"
-msgstr ""
+msgstr "Rediger Relateret Del"
#: src/tables/part/SelectionListTable.tsx:64
#: src/tables/part/SelectionListTable.tsx:115
msgid "Add Selection List"
-msgstr ""
+msgstr "Tilføj Valgliste"
#: src/tables/part/SelectionListTable.tsx:76
msgid "Edit Selection List"
-msgstr ""
+msgstr "Rediger Valgliste"
#: src/tables/part/SelectionListTable.tsx:84
msgid "Delete Selection List"
-msgstr ""
+msgstr "Slet Valgliste"
#: src/tables/plugin/PluginErrorTable.tsx:29
msgid "Stage"
-msgstr ""
+msgstr "Fase"
#: src/tables/plugin/PluginListTable.tsx:43
msgid "Plugin is active"
-msgstr ""
+msgstr "Plugin er aktiv"
#: src/tables/plugin/PluginListTable.tsx:49
msgid "Plugin is inactive"
-msgstr ""
+msgstr "Plugin er Inaktiv"
#: src/tables/plugin/PluginListTable.tsx:56
msgid "Plugin is not installed"
-msgstr ""
+msgstr "Plugin er ikke installeret"
#: src/tables/plugin/PluginListTable.tsx:78
#: src/tables/settings/ExportSessionTable.tsx:33
msgid "Plugin"
-msgstr ""
+msgstr "Plugin"
#: src/tables/plugin/PluginListTable.tsx:95
#~ msgid "Plugin with key {pluginKey} not found"
@@ -10945,7 +10976,7 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:106
#: src/tables/plugin/PluginListTable.tsx:422
msgid "Mandatory"
-msgstr ""
+msgstr "Obligatorisk"
#: src/tables/plugin/PluginListTable.tsx:113
#~ msgid "Plugin with id {id} not found"
@@ -10953,7 +10984,7 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:120
msgid "Description not available"
-msgstr ""
+msgstr "Beskrivelse ikke tilgængelig"
#: src/tables/plugin/PluginListTable.tsx:122
#~ msgid "Plugin information"
@@ -10975,19 +11006,19 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:153
msgid "Confirm plugin activation"
-msgstr ""
+msgstr "Bekræft aktivering af plugin"
#: src/tables/plugin/PluginListTable.tsx:154
msgid "Confirm plugin deactivation"
-msgstr ""
+msgstr "Bekræft deaktivering af plugin"
#: src/tables/plugin/PluginListTable.tsx:159
msgid "The selected plugin will be activated"
-msgstr ""
+msgstr "Det valgte plugin vil blive aktiveret"
#: src/tables/plugin/PluginListTable.tsx:160
msgid "The selected plugin will be deactivated"
-msgstr ""
+msgstr "Det valgte plugin vil blive deaktiveret"
#: src/tables/plugin/PluginListTable.tsx:163
#~ msgid "Package information"
@@ -10995,15 +11026,15 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:178
msgid "Deactivate"
-msgstr ""
+msgstr "Deaktiver"
#: src/tables/plugin/PluginListTable.tsx:192
msgid "Activate"
-msgstr ""
+msgstr "Aktiver"
#: src/tables/plugin/PluginListTable.tsx:193
msgid "Activate selected plugin"
-msgstr ""
+msgstr "Aktiver det valgte plugin"
#: src/tables/plugin/PluginListTable.tsx:197
#~ msgid "Plugin settings"
@@ -11011,32 +11042,32 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:205
msgid "Update selected plugin"
-msgstr ""
+msgstr "Opdater valgte plugin"
#: src/tables/plugin/PluginListTable.tsx:224
#: src/tables/stock/InstalledItemsTable.tsx:107
msgid "Uninstall"
-msgstr ""
+msgstr "Afinstaller"
#: src/tables/plugin/PluginListTable.tsx:225
msgid "Uninstall selected plugin"
-msgstr ""
+msgstr "Afinstaller det valgte plugin"
#: src/tables/plugin/PluginListTable.tsx:244
msgid "Delete selected plugin configuration"
-msgstr ""
+msgstr "Slet valgte plugin konfiguration"
#: src/tables/plugin/PluginListTable.tsx:260
msgid "Activate Plugin"
-msgstr ""
+msgstr "Aktiver Plugin"
#: src/tables/plugin/PluginListTable.tsx:267
msgid "The plugin was activated"
-msgstr ""
+msgstr "Plugin blev aktiveret"
#: src/tables/plugin/PluginListTable.tsx:268
msgid "The plugin was deactivated"
-msgstr ""
+msgstr "Plugin blev deaktiveret"
#: src/tables/plugin/PluginListTable.tsx:280
#~ msgid "Install plugin"
@@ -11045,19 +11076,19 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:281
#: src/tables/plugin/PluginListTable.tsx:368
msgid "Install Plugin"
-msgstr ""
+msgstr "Installer plugin"
#: src/tables/plugin/PluginListTable.tsx:294
msgid "Install"
-msgstr ""
+msgstr "Installer"
#: src/tables/plugin/PluginListTable.tsx:295
msgid "Plugin installed successfully"
-msgstr ""
+msgstr "Plugin blev installeret"
#: src/tables/plugin/PluginListTable.tsx:300
msgid "Uninstall Plugin"
-msgstr ""
+msgstr "Afinstaller Plugin"
#: src/tables/plugin/PluginListTable.tsx:308
#~ msgid "This action cannot be undone."
@@ -11065,23 +11096,23 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:312
msgid "Confirm plugin uninstall"
-msgstr ""
+msgstr "Bekræft afinstallation af plugin"
#: src/tables/plugin/PluginListTable.tsx:315
msgid "The selected plugin will be uninstalled."
-msgstr ""
+msgstr "Det valgte plugin vil blive afinstalleret."
#: src/tables/plugin/PluginListTable.tsx:320
msgid "Plugin uninstalled successfully"
-msgstr ""
+msgstr "Plugin blev afinstalleret"
#: src/tables/plugin/PluginListTable.tsx:328
msgid "Delete Plugin"
-msgstr ""
+msgstr "Slet Plugin"
#: src/tables/plugin/PluginListTable.tsx:329
msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?"
-msgstr ""
+msgstr "Sletning af denne plugin konfiguration vil fjerne alle tilknyttede indstillinger og data. Er du sikker på, at du vil slette dette plugin?"
#: src/tables/plugin/PluginListTable.tsx:338
#~ msgid "Deactivate Plugin"
@@ -11089,11 +11120,11 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:342
msgid "Plugins reloaded"
-msgstr ""
+msgstr "Plugins genindlæst"
#: src/tables/plugin/PluginListTable.tsx:343
msgid "Plugins were reloaded successfully"
-msgstr ""
+msgstr "Plugins blev genindlæst"
#: src/tables/plugin/PluginListTable.tsx:354
#~ msgid "The following plugin will be activated"
@@ -11105,7 +11136,7 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:361
msgid "Reload Plugins"
-msgstr ""
+msgstr "Genindlæs Plugins"
#: src/tables/plugin/PluginListTable.tsx:376
#~ msgid "Activating plugin"
@@ -11117,7 +11148,7 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:385
msgid "Plugin Detail"
-msgstr ""
+msgstr "Plugin Detaljer"
#: src/tables/plugin/PluginListTable.tsx:392
#~ msgid "Plugin updated"
@@ -11129,12 +11160,12 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:427
msgid "Sample"
-msgstr ""
+msgstr "Prøve"
#: src/tables/plugin/PluginListTable.tsx:432
#: src/tables/stock/StockItemTable.tsx:372
msgid "Installed"
-msgstr ""
+msgstr "Installeret"
#: src/tables/plugin/PluginListTable.tsx:615
#~ msgid "Plugin detail"
@@ -11156,28 +11187,28 @@ msgstr ""
#: src/tables/purchasing/ManufacturerPartTable.tsx:82
#: src/tables/purchasing/SupplierPartTable.tsx:99
msgid "MPN"
-msgstr ""
+msgstr "Producentens varenummer"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:44
#: src/tables/purchasing/ManufacturerPartTable.tsx:134
#: src/tables/purchasing/SupplierPartTable.tsx:220
msgid "Active Part"
-msgstr ""
+msgstr "Aktiv Del"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:45
#: src/tables/purchasing/ManufacturerPartTable.tsx:135
msgid "Show manufacturer parts for active internal parts."
-msgstr ""
+msgstr "Vis producentens dele til aktive interne dele."
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:50
#: src/tables/purchasing/ManufacturerPartTable.tsx:140
msgid "Active Manufacturer"
-msgstr ""
+msgstr "Aktiv Producent"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:51
#: src/tables/purchasing/ManufacturerPartTable.tsx:142
msgid "Show manufacturer parts for active manufacturers."
-msgstr ""
+msgstr "Vis producentens dele for aktive producenter."
#: src/tables/purchasing/ManufacturerPartTable.tsx:63
#~ msgid "Create Manufacturer Part"
@@ -11196,25 +11227,25 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
-msgstr ""
+msgstr "Importer Linjeelementer"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:237
msgid "Supplier Code"
-msgstr ""
+msgstr "Leverandør Kode"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:244
msgid "Supplier Link"
-msgstr ""
+msgstr "Leverandør Link"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:251
msgid "Manufacturer Code"
-msgstr ""
+msgstr "Producentens Kode"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:284
msgid "Show line items which have been received"
-msgstr ""
+msgstr "Vis linjeelementer som er modtaget"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:344
#: src/tables/sales/ReturnOrderLineItemTable.tsx:160
@@ -11222,21 +11253,21 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
-msgstr ""
+msgstr "Modtag linje element"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
-msgstr ""
+msgstr "Modtag varer"
#: src/tables/purchasing/SupplierPartTable.tsx:129
msgid "Base units"
-msgstr ""
+msgstr "Basis enheder"
#: src/tables/purchasing/SupplierPartTable.tsx:192
msgid "Add supplier part"
-msgstr ""
+msgstr "Tilføj leverandørdel"
#: src/tables/purchasing/SupplierPartTable.tsx:193
#~ msgid "Supplier part updated"
@@ -11244,7 +11275,7 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:200
msgid "Import supplier part"
-msgstr ""
+msgstr "Import leverandør del"
#: src/tables/purchasing/SupplierPartTable.tsx:205
#~ msgid "Supplier part deleted"
@@ -11256,31 +11287,31 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:216
msgid "Show active supplier parts"
-msgstr ""
+msgstr "Vis aktive leverandør dele"
#: src/tables/purchasing/SupplierPartTable.tsx:221
msgid "Show active internal parts"
-msgstr ""
+msgstr "Vis aktive interne dele"
#: src/tables/purchasing/SupplierPartTable.tsx:225
msgid "Active Supplier"
-msgstr ""
+msgstr "Aktiv Leverandør"
#: src/tables/purchasing/SupplierPartTable.tsx:226
msgid "Show active suppliers"
-msgstr ""
+msgstr "Vis aktive leverandører"
#: src/tables/purchasing/SupplierPartTable.tsx:231
msgid "Show supplier parts with stock"
-msgstr ""
+msgstr "Vis leverandørdele med lager"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:158
msgid "Received Date"
-msgstr ""
+msgstr "Modtaget Dato"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:172
msgid "Show items which have been received"
-msgstr ""
+msgstr "Vis elementer som er modtaget"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:177
msgid "Filter by line item status"
@@ -11288,11 +11319,11 @@ msgstr ""
#: src/tables/sales/ReturnOrderLineItemTable.tsx:195
msgid "Receive selected items"
-msgstr ""
+msgstr "Modtag valgte elementer"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:230
msgid "Receive Item"
-msgstr ""
+msgstr "Modtag Vare"
#: src/tables/sales/SalesOrderAllocationTable.tsx:89
msgid "Show outstanding allocations"
@@ -11308,20 +11339,20 @@ msgstr ""
#: src/tables/sales/SalesOrderAllocationTable.tsx:156
msgid "Available Quantity"
-msgstr ""
+msgstr "Tilgængelig Antal"
#: src/tables/sales/SalesOrderAllocationTable.tsx:163
msgid "Allocated Quantity"
-msgstr ""
+msgstr "Tildelt Antal"
#: src/tables/sales/SalesOrderAllocationTable.tsx:177
#: src/tables/sales/SalesOrderAllocationTable.tsx:191
msgid "No shipment"
-msgstr ""
+msgstr "Ingen forsendelse"
#: src/tables/sales/SalesOrderAllocationTable.tsx:189
msgid "Not shipped"
-msgstr ""
+msgstr "Ikke afsendt"
#: src/tables/sales/SalesOrderAllocationTable.tsx:211
#: src/tables/sales/SalesOrderAllocationTable.tsx:235
@@ -11336,15 +11367,15 @@ msgstr ""
#: src/tables/sales/SalesOrderAllocationTable.tsx:261
#: src/tables/sales/SalesOrderAllocationTable.tsx:262
msgid "View Shipment"
-msgstr ""
+msgstr "Vis Forsendelser"
#: src/tables/sales/SalesOrderAllocationTable.tsx:317
msgid "Assign to Shipment"
-msgstr ""
+msgstr "Tildel til Forsendelse"
#: src/tables/sales/SalesOrderAllocationTable.tsx:333
msgid "Assign to shipment"
-msgstr ""
+msgstr "Tildel til Forsendelse"
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
#~ msgid "Allocate stock"
@@ -11356,7 +11387,7 @@ msgstr ""
#: src/tables/sales/SalesOrderLineItemTable.tsx:293
msgid "Allocate Serial Numbers"
-msgstr ""
+msgstr "Tildel Serienummer"
#: src/tables/sales/SalesOrderLineItemTable.tsx:343
msgid "Show lines which are fully allocated"
@@ -11384,44 +11415,44 @@ msgstr ""
#: src/tables/sales/SalesOrderShipmentTable.tsx:79
msgid "Create Shipment"
-msgstr ""
+msgstr "Opret Forsendelse"
#: src/tables/sales/SalesOrderShipmentTable.tsx:164
msgid "Items"
-msgstr ""
+msgstr "Elementer"
#: src/tables/sales/SalesOrderShipmentTable.tsx:248
msgid "Edit shipment"
-msgstr ""
+msgstr "Rediger forsendelse"
#: src/tables/sales/SalesOrderShipmentTable.tsx:256
msgid "Cancel shipment"
-msgstr ""
+msgstr "Annuller forsendelse"
#: src/tables/sales/SalesOrderShipmentTable.tsx:286
msgid "Add shipment"
-msgstr ""
+msgstr "Tilføj Forsendelse"
#: src/tables/sales/SalesOrderShipmentTable.tsx:300
msgid "Show shipments which have been checked"
-msgstr ""
+msgstr "Vis forsendelser som er blevet tjekket"
#: src/tables/sales/SalesOrderShipmentTable.tsx:305
msgid "Show shipments which have been shipped"
-msgstr ""
+msgstr "Vis forsendelser som er blevet sendt"
#: src/tables/sales/SalesOrderShipmentTable.tsx:310
msgid "Show shipments which have been delivered"
-msgstr ""
+msgstr "Vis forsendelser som er blevet leveret"
#: src/tables/settings/ApiTokenTable.tsx:30
#: src/tables/settings/ApiTokenTable.tsx:44
msgid "Generate Token"
-msgstr ""
+msgstr "Generer Token"
#: src/tables/settings/ApiTokenTable.tsx:32
msgid "Token generated"
-msgstr ""
+msgstr "Token genereret"
#: src/tables/settings/ApiTokenTable.tsx:67
#: src/tables/settings/ApiTokenTable.tsx:117
@@ -11431,15 +11462,15 @@ msgstr ""
#: src/tables/settings/ApiTokenTable.tsx:71
#: src/tables/settings/ApiTokenTable.tsx:179
msgid "Token"
-msgstr ""
+msgstr "Token"
#: src/tables/settings/ApiTokenTable.tsx:78
msgid "In Use"
-msgstr ""
+msgstr "I Brug"
#: src/tables/settings/ApiTokenTable.tsx:87
msgid "Last Seen"
-msgstr ""
+msgstr "Sidst set"
#: src/tables/settings/ApiTokenTable.tsx:92
msgid "Expiry"
@@ -11451,19 +11482,19 @@ msgstr ""
#: src/tables/settings/ApiTokenTable.tsx:137
msgid "Revoke"
-msgstr ""
+msgstr "Ophæv"
#: src/tables/settings/ApiTokenTable.tsx:161
msgid "Error revoking token"
-msgstr ""
+msgstr "Fejl ved ophævelse af token"
#: src/tables/settings/ApiTokenTable.tsx:183
msgid "Tokens are only shown once - make sure to note it down."
-msgstr ""
+msgstr "Tokens vises kun en gang - sørg for at notere det ned."
#: src/tables/settings/BarcodeScanHistoryTable.tsx:60
msgid "Barcode Information"
-msgstr ""
+msgstr "Stregkode Information"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:85
msgid "Endpoint"
@@ -11473,19 +11504,19 @@ msgstr ""
#: src/tables/settings/BarcodeScanHistoryTable.tsx:208
#: src/tables/stock/StockItemTestResultTable.tsx:191
msgid "Result"
-msgstr ""
+msgstr "Resultat"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:97
msgid "Context"
-msgstr ""
+msgstr "Kontekst"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:118
msgid "Response"
-msgstr ""
+msgstr "Svar"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:209
msgid "Filter by result"
-msgstr ""
+msgstr "Filtrer efter resultat"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:223
msgid "Delete Barcode Scan Record"
@@ -11493,19 +11524,19 @@ msgstr ""
#: src/tables/settings/BarcodeScanHistoryTable.tsx:249
msgid "Barcode Scan Details"
-msgstr ""
+msgstr "Stregkode Scan Detaljer"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:259
msgid "Logging Disabled"
-msgstr ""
+msgstr "Logning Deaktiveret"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:261
msgid "Barcode logging is not enabled"
-msgstr ""
+msgstr "Barkode logning er ikke aktiveret"
#: src/tables/settings/CustomStateTable.tsx:63
msgid "Status Group"
-msgstr ""
+msgstr "Status Gruppe"
#: src/tables/settings/CustomStateTable.tsx:84
msgid "Logical State"
@@ -11549,60 +11580,60 @@ msgstr ""
#: src/tables/settings/EmailTable.tsx:27
msgid "Sent"
-msgstr ""
+msgstr "Sendt"
#: src/tables/settings/EmailTable.tsx:29
msgid "Failed"
-msgstr ""
+msgstr "Fejlede"
#: src/tables/settings/EmailTable.tsx:33
msgid "Read"
-msgstr ""
+msgstr "Læs"
#: src/tables/settings/EmailTable.tsx:35
msgid "Confirmed"
-msgstr ""
+msgstr "Bekræftet"
#: src/tables/settings/EmailTable.tsx:43
#: src/tables/settings/EmailTable.tsx:58
msgid "Send Test Email"
-msgstr ""
+msgstr "Send Test E-Mail"
#: src/tables/settings/EmailTable.tsx:45
msgid "Email sent successfully"
-msgstr ""
+msgstr "E-mail afsendt"
#: src/tables/settings/EmailTable.tsx:71
msgid "Delete Email"
-msgstr ""
+msgstr "Slet E-Mail"
#: src/tables/settings/EmailTable.tsx:72
msgid "Email deleted successfully"
-msgstr ""
+msgstr "E-mail slettet"
#: src/tables/settings/EmailTable.tsx:80
msgid "Subject"
-msgstr ""
+msgstr "Emne"
#: src/tables/settings/EmailTable.tsx:85
msgid "To"
-msgstr ""
+msgstr "Til"
#: src/tables/settings/EmailTable.tsx:90
msgid "Sender"
-msgstr ""
+msgstr "Afsender"
#: src/tables/settings/EmailTable.tsx:122
msgid "Direction"
-msgstr ""
+msgstr "Retning"
#: src/tables/settings/EmailTable.tsx:125
msgid "Incoming"
-msgstr ""
+msgstr "Indkommende"
#: src/tables/settings/EmailTable.tsx:125
msgid "Outgoing"
-msgstr ""
+msgstr "Udgående"
#: src/tables/settings/ErrorTable.tsx:51
#~ msgid "Delete error report"
@@ -11614,28 +11645,28 @@ msgstr ""
#: src/tables/settings/ErrorTable.tsx:103
msgid "When"
-msgstr ""
+msgstr "Når"
#: src/tables/settings/ErrorTable.tsx:113
msgid "Error Information"
-msgstr ""
+msgstr "Fejl information"
#: src/tables/settings/ErrorTable.tsx:123
msgid "Delete Error Report"
-msgstr ""
+msgstr "Slet Fejlrapport"
#: src/tables/settings/ErrorTable.tsx:125
msgid "Are you sure you want to delete this error report?"
-msgstr ""
+msgstr "Er du sikker på du vil slette denne fejlrapport?"
#: src/tables/settings/ErrorTable.tsx:127
msgid "Error report deleted"
-msgstr ""
+msgstr "Fejlrapport slettet"
#: src/tables/settings/ErrorTable.tsx:146
#: src/tables/settings/FailedTasksTable.tsx:65
msgid "Error Details"
-msgstr ""
+msgstr "Fejldetaljer"
#: src/tables/settings/ExportSessionTable.tsx:28
msgid "Output Type"
@@ -11647,48 +11678,48 @@ msgstr ""
#: src/tables/settings/ExportSessionTable.tsx:59
msgid "Delete Output"
-msgstr ""
+msgstr "Slet Output"
#: src/tables/settings/FailedTasksTable.tsx:32
#: src/tables/settings/PendingTasksTable.tsx:28
#: src/tables/settings/ScheduledTasksTable.tsx:19
msgid "Task"
-msgstr ""
+msgstr "Opgave"
#: src/tables/settings/FailedTasksTable.tsx:38
#: src/tables/settings/PendingTasksTable.tsx:33
msgid "Task ID"
-msgstr ""
+msgstr "Opgave ID"
#: src/tables/settings/FailedTasksTable.tsx:42
#: src/tables/stock/StockItemTestResultTable.tsx:233
msgid "Started"
-msgstr ""
+msgstr "Startede"
#: src/tables/settings/FailedTasksTable.tsx:54
msgid "Attempts"
-msgstr ""
+msgstr "Forsøg"
#: src/tables/settings/FailedTasksTable.tsx:92
msgid "No Information"
-msgstr ""
+msgstr "Ingen Information"
#: src/tables/settings/FailedTasksTable.tsx:93
msgid "No error details are available for this task"
-msgstr ""
+msgstr "Ingen fejldetaljer er tilgængelige for denne opgave"
#: src/tables/settings/GroupTable.tsx:71
msgid "Group with id {id} not found"
-msgstr ""
+msgstr "Gruppe med id {id} ikke fundet"
#: src/tables/settings/GroupTable.tsx:73
msgid "An error occurred while fetching group details"
-msgstr ""
+msgstr "En fejl opstod under hentning af gruppedetaljer"
#: src/tables/settings/GroupTable.tsx:96
#: src/tables/settings/GroupTable.tsx:257
msgid "Name of the user group"
-msgstr ""
+msgstr "Navn på brugergruppen"
#: src/tables/settings/GroupTable.tsx:117
#~ msgid "Permission set"
@@ -11697,23 +11728,23 @@ msgstr ""
#: src/tables/settings/GroupTable.tsx:170
#: src/tables/settings/UserTable.tsx:315
msgid "Open Profile"
-msgstr ""
+msgstr "Åbn Profil"
#: src/tables/settings/GroupTable.tsx:185
msgid "Delete group"
-msgstr ""
+msgstr "Slet gruppe"
#: src/tables/settings/GroupTable.tsx:186
msgid "Group deleted"
-msgstr ""
+msgstr "Gruppe slettet"
#: src/tables/settings/GroupTable.tsx:188
msgid "Are you sure you want to delete this group?"
-msgstr ""
+msgstr "Er du sikker på, at du vil slette denne gruppe?"
#: src/tables/settings/GroupTable.tsx:200
msgid "Add group"
-msgstr ""
+msgstr "Tilføj gruppe"
#: src/tables/settings/GroupTable.tsx:213
#~ msgid "Edit group"
@@ -11721,28 +11752,28 @@ msgstr ""
#: src/tables/settings/GroupTable.tsx:221
msgid "Edit Group"
-msgstr ""
+msgstr "Rediger Gruppe"
#: src/tables/settings/GroupTable.tsx:253
msgid "Add Group"
-msgstr ""
+msgstr "Tilføj gruppe"
#: src/tables/settings/ImportSessionTable.tsx:38
msgid "Delete Import Session"
-msgstr ""
+msgstr "Slet import session"
#: src/tables/settings/ImportSessionTable.tsx:44
#: src/tables/settings/ImportSessionTable.tsx:129
msgid "Create Import Session"
-msgstr ""
+msgstr "Opret Import Session"
#: src/tables/settings/ImportSessionTable.tsx:72
msgid "Uploaded"
-msgstr ""
+msgstr "Uploadet"
#: src/tables/settings/ImportSessionTable.tsx:83
msgid "Imported Rows"
-msgstr ""
+msgstr "Importerede Rækker"
#: src/tables/settings/ImportSessionTable.tsx:112
#: src/tables/settings/TemplateTable.tsx:369
@@ -11755,39 +11786,39 @@ msgstr ""
#: src/tables/settings/PendingTasksTable.tsx:47
msgid "Arguments"
-msgstr ""
+msgstr "Argumenter"
#: src/tables/settings/PendingTasksTable.tsx:61
msgid "Remove all pending tasks"
-msgstr ""
+msgstr "Fjern alle udestående opgaver"
#: src/tables/settings/PendingTasksTable.tsx:69
msgid "All pending tasks deleted"
-msgstr ""
+msgstr "Alle ventende opgaver slettet"
#: src/tables/settings/PendingTasksTable.tsx:76
msgid "Error while deleting all pending tasks"
-msgstr ""
+msgstr "Fejl under sletning af alle ventende opgaver"
#: src/tables/settings/ProjectCodeTable.tsx:58
msgid "Edit Project Code"
-msgstr ""
+msgstr "Rediger Projektkode"
#: src/tables/settings/ProjectCodeTable.tsx:66
msgid "Delete Project Code"
-msgstr ""
+msgstr "Slet Projektkode"
#: src/tables/settings/ProjectCodeTable.tsx:97
msgid "Add project code"
-msgstr ""
+msgstr "Tilføj Projektkode"
#: src/tables/settings/ScheduledTasksTable.tsx:28
msgid "Last Run"
-msgstr ""
+msgstr "Sidste kørsel"
#: src/tables/settings/ScheduledTasksTable.tsx:50
msgid "Next Run"
-msgstr ""
+msgstr "Næste Kørsel"
#: src/tables/settings/StocktakeReportTable.tsx:28
#~ msgid "Report"
@@ -11815,11 +11846,11 @@ msgstr ""
#: src/tables/settings/TemplateTable.tsx:165
msgid "Template not found"
-msgstr ""
+msgstr "Skabelon ikke fundet"
#: src/tables/settings/TemplateTable.tsx:167
msgid "An error occurred while fetching template details"
-msgstr ""
+msgstr "En fejl opstod under hentning af skabelon detaljer"
#: src/tables/settings/TemplateTable.tsx:243
#~ msgid "Add new"
@@ -11831,28 +11862,28 @@ msgstr ""
#: src/tables/settings/TemplateTable.tsx:261
msgid "Modify"
-msgstr ""
+msgstr "Modificer"
#: src/tables/settings/TemplateTable.tsx:262
msgid "Modify template file"
-msgstr ""
+msgstr "Modificer skabelon fil"
#: src/tables/settings/TemplateTable.tsx:313
#: src/tables/settings/TemplateTable.tsx:381
msgid "Edit Template"
-msgstr ""
+msgstr "Rediger Skabelon"
#: src/tables/settings/TemplateTable.tsx:321
msgid "Delete template"
-msgstr ""
+msgstr "Slet Skabelon"
#: src/tables/settings/TemplateTable.tsx:327
msgid "Add Template"
-msgstr ""
+msgstr "Tilføj skabelon"
#: src/tables/settings/TemplateTable.tsx:340
msgid "Add template"
-msgstr ""
+msgstr "Tilføj skabelon"
#: src/tables/settings/TemplateTable.tsx:363
msgid "Filter by enabled status"
@@ -11864,23 +11895,23 @@ msgstr ""
#: src/tables/settings/UserTable.tsx:123
msgid "Groups updated"
-msgstr ""
+msgstr "Grupper opdateret"
#: src/tables/settings/UserTable.tsx:124
msgid "User groups updated successfully"
-msgstr ""
+msgstr "Brugergrupper blev opdateret"
#: src/tables/settings/UserTable.tsx:131
msgid "Error updating user groups"
-msgstr ""
+msgstr "Fejl ved opdatering af brugergrupper"
#: src/tables/settings/UserTable.tsx:150
msgid "User with id {id} not found"
-msgstr ""
+msgstr "Bruger med id {id} blev ikke fundet"
#: src/tables/settings/UserTable.tsx:152
msgid "An error occurred while fetching user details"
-msgstr ""
+msgstr "En fejl opstod under hentning af brugeroplysninger"
#: src/tables/settings/UserTable.tsx:154
#~ msgid "No groups"
@@ -11888,35 +11919,35 @@ msgstr ""
#: src/tables/settings/UserTable.tsx:178
msgid "Is Active"
-msgstr ""
+msgstr "Er Aktiv"
#: src/tables/settings/UserTable.tsx:179
msgid "Designates whether this user should be treated as active. Unselect this instead of deleting accounts."
-msgstr ""
+msgstr "Underskriver om denne bruger skal behandles som aktiv. Afmarker dette i stedet for at slette konti."
#: src/tables/settings/UserTable.tsx:183
msgid "Is Staff"
-msgstr ""
+msgstr "Er Personale"
#: src/tables/settings/UserTable.tsx:184
msgid "Designates whether the user can log into the django admin site."
-msgstr ""
+msgstr "Angiver, om brugeren kan logge ind på django admin websted."
#: src/tables/settings/UserTable.tsx:188
msgid "Is Superuser"
-msgstr ""
+msgstr "Er Superbruger"
#: src/tables/settings/UserTable.tsx:189
msgid "Designates that this user has all permissions without explicitly assigning them."
-msgstr ""
+msgstr "Angiver, at denne bruger har alle tilladelser uden eksplicit at tildele dem."
#: src/tables/settings/UserTable.tsx:199
msgid "You cannot edit the rights for the currently logged-in user."
-msgstr ""
+msgstr "Du kan ikke redigere rettighederne for den bruger, der aktuelt er logget ind."
#: src/tables/settings/UserTable.tsx:218
msgid "User Groups"
-msgstr ""
+msgstr "Brugergrupper"
#: src/tables/settings/UserTable.tsx:305
#~ msgid "Edit user"
@@ -11924,153 +11955,153 @@ msgstr ""
#: src/tables/settings/UserTable.tsx:332
msgid "Lock user"
-msgstr ""
+msgstr "Lås bruger"
#: src/tables/settings/UserTable.tsx:342
msgid "Unlock user"
-msgstr ""
+msgstr "Oplås bruger"
#: src/tables/settings/UserTable.tsx:358
msgid "Delete user"
-msgstr ""
+msgstr "Slet bruger"
#: src/tables/settings/UserTable.tsx:359
msgid "User deleted"
-msgstr ""
+msgstr "Bruger slettet"
#: src/tables/settings/UserTable.tsx:362
msgid "Are you sure you want to delete this user?"
-msgstr ""
+msgstr "Er du sikker på, du ønsker at slette denne bruger?"
#: src/tables/settings/UserTable.tsx:372
msgid "Set Password"
-msgstr ""
+msgstr "Angiv adgangskode"
#: src/tables/settings/UserTable.tsx:377
msgid "Password updated"
-msgstr ""
+msgstr "Adgangskode opdateret"
#: src/tables/settings/UserTable.tsx:388
msgid "Add user"
-msgstr ""
+msgstr "Tilføj bruger"
#: src/tables/settings/UserTable.tsx:401
msgid "Show active users"
-msgstr ""
+msgstr "Vis aktive brugere"
#: src/tables/settings/UserTable.tsx:406
msgid "Show staff users"
-msgstr ""
+msgstr "Vis personale brugere"
#: src/tables/settings/UserTable.tsx:411
msgid "Show superusers"
-msgstr ""
+msgstr "Vis superbruger"
#: src/tables/settings/UserTable.tsx:430
msgid "Edit User"
-msgstr ""
+msgstr "Rediger bruger"
#: src/tables/settings/UserTable.tsx:463
msgid "Add User"
-msgstr ""
+msgstr "Tilføj Bruger"
#: src/tables/settings/UserTable.tsx:471
msgid "Added user"
-msgstr ""
+msgstr "Tilføjet bruger"
#: src/tables/settings/UserTable.tsx:481
msgid "User updated"
-msgstr ""
+msgstr "Bruger opdateret"
#: src/tables/settings/UserTable.tsx:482
msgid "User updated successfully"
-msgstr ""
+msgstr "Bruger opdateret med succes"
#: src/tables/settings/UserTable.tsx:488
msgid "Error updating user"
-msgstr ""
+msgstr "Fejl ved opdatering af bruger"
#: src/tables/stock/InstalledItemsTable.tsx:38
#: src/tables/stock/InstalledItemsTable.tsx:90
msgid "Install Item"
-msgstr ""
+msgstr "Installer Element"
#: src/tables/stock/InstalledItemsTable.tsx:40
msgid "Item installed"
-msgstr ""
+msgstr "Element installeret"
#: src/tables/stock/InstalledItemsTable.tsx:51
msgid "Uninstall Item"
-msgstr ""
+msgstr "Afinstaller Element"
#: src/tables/stock/InstalledItemsTable.tsx:53
msgid "Item uninstalled"
-msgstr ""
+msgstr "Element afinstalleret"
#: src/tables/stock/InstalledItemsTable.tsx:108
msgid "Uninstall stock item"
-msgstr ""
+msgstr "Afinstaller lagervare"
#: src/tables/stock/LocationTypesTable.tsx:44
#: src/tables/stock/LocationTypesTable.tsx:111
msgid "Add Location Type"
-msgstr ""
+msgstr "Tilføj Lokationstype"
#: src/tables/stock/LocationTypesTable.tsx:52
msgid "Edit Location Type"
-msgstr ""
+msgstr "Rediger Lokationstype"
#: src/tables/stock/LocationTypesTable.tsx:60
msgid "Delete Location Type"
-msgstr ""
+msgstr "Slet Lokationstype"
#: src/tables/stock/LocationTypesTable.tsx:68
msgid "Icon"
-msgstr ""
+msgstr "Ikon"
#: src/tables/stock/StockItemTable.tsx:106
msgid "This stock item is in production"
-msgstr ""
+msgstr "Denne lagervare er i produktion"
#: src/tables/stock/StockItemTable.tsx:113
msgid "This stock item has been assigned to a sales order"
-msgstr ""
+msgstr "Denne lagervare er blevet tildelt en salgsordre"
#: src/tables/stock/StockItemTable.tsx:120
msgid "This stock item has been assigned to a customer"
-msgstr ""
+msgstr "Denne lagervare er blevet tildelt en kunde"
#: src/tables/stock/StockItemTable.tsx:127
msgid "This stock item is installed in another stock item"
-msgstr ""
+msgstr "Denne lagervare er installeret i en anden lagervare"
#: src/tables/stock/StockItemTable.tsx:134
msgid "This stock item has been consumed by a build order"
-msgstr ""
+msgstr "Denne lagervare er blevet brugt af en byggeordre"
#: src/tables/stock/StockItemTable.tsx:141
msgid "This stock item is unavailable"
-msgstr ""
+msgstr "Denne lagervare er utilgængelig"
#: src/tables/stock/StockItemTable.tsx:150
msgid "This stock item has expired"
-msgstr ""
+msgstr "Denne lagervare er udløbet"
#: src/tables/stock/StockItemTable.tsx:154
msgid "This stock item is stale"
-msgstr ""
+msgstr "Denne lagervare er forældet"
#: src/tables/stock/StockItemTable.tsx:166
msgid "This stock item is fully allocated"
-msgstr ""
+msgstr "Denne lagervare er fuldt allokeret"
#: src/tables/stock/StockItemTable.tsx:173
msgid "This stock item is partially allocated"
-msgstr ""
+msgstr "Denne lagervare er delvist allokeret"
#: src/tables/stock/StockItemTable.tsx:201
msgid "This stock item has been depleted"
-msgstr ""
+msgstr "Denne lagervare er opbrugt"
#: src/tables/stock/StockItemTable.tsx:301
#~ msgid "Show stock for assmebled parts"
@@ -12082,7 +12113,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:323
msgid "Show stock for active parts"
-msgstr ""
+msgstr "Vis lager for aktive dele"
#: src/tables/stock/StockItemTable.tsx:334
msgid "Show stock for assembled parts"
@@ -12090,24 +12121,24 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:339
msgid "Show items which have been allocated"
-msgstr ""
+msgstr "Vis elementer som er blevet allokeret"
#: src/tables/stock/StockItemTable.tsx:344
msgid "Show items which are available"
-msgstr ""
+msgstr "Vis elementer, der er tilgængelige"
#: src/tables/stock/StockItemTable.tsx:348
#: src/tables/stock/StockLocationTable.tsx:38
msgid "Include Sublocations"
-msgstr ""
+msgstr "Inkluder underlokationer"
#: src/tables/stock/StockItemTable.tsx:349
msgid "Include stock in sublocations"
-msgstr ""
+msgstr "Inkluder lager i underlokationer"
#: src/tables/stock/StockItemTable.tsx:353
msgid "Depleted"
-msgstr ""
+msgstr "Udtømt"
#: src/tables/stock/StockItemTable.tsx:354
msgid "Show depleted stock items"
@@ -12115,7 +12146,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:360
msgid "Show items which are in production"
-msgstr ""
+msgstr "Vis varer der er i produktion"
#: src/tables/stock/StockItemTable.tsx:362
#~ msgid "Include stock items for variant parts"
@@ -12123,31 +12154,31 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:368
msgid "Show items which have been consumed by a build order"
-msgstr ""
+msgstr "Vis elementer som er blevet brugt af en byggeordre"
#: src/tables/stock/StockItemTable.tsx:373
msgid "Show stock items which are installed in other items"
-msgstr ""
+msgstr "Vis lagervarer som er installeret i andre varer"
#: src/tables/stock/StockItemTable.tsx:377
msgid "Sent to Customer"
-msgstr ""
+msgstr "Sendt til Kunden"
#: src/tables/stock/StockItemTable.tsx:378
msgid "Show items which have been sent to a customer"
-msgstr ""
+msgstr "Vis varer som er blevet sendt til en kunde"
#: src/tables/stock/StockItemTable.tsx:389
msgid "Show tracked items"
-msgstr ""
+msgstr "Vis sporede elementer"
#: src/tables/stock/StockItemTable.tsx:393
msgid "Has Purchase Price"
-msgstr ""
+msgstr "Har Købspris"
#: src/tables/stock/StockItemTable.tsx:394
msgid "Show items which have a purchase price"
-msgstr ""
+msgstr "Vis varer som har en købspris"
#: src/tables/stock/StockItemTable.tsx:397
#~ msgid "Serial Number LTE"
@@ -12155,7 +12186,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:399
msgid "Show items which have expired"
-msgstr ""
+msgstr "Vis vare som er udløbet"
#: src/tables/stock/StockItemTable.tsx:403
#~ msgid "Serial Number GTE"
@@ -12163,39 +12194,39 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:405
msgid "Show items which are stale"
-msgstr ""
+msgstr "Vis vare som er forældede"
#: src/tables/stock/StockItemTable.tsx:410
msgid "Expired Before"
-msgstr ""
+msgstr "Udløbet Før"
#: src/tables/stock/StockItemTable.tsx:411
msgid "Show items which expired before this date"
-msgstr ""
+msgstr "Vis elementer som er udløbet før denne dato"
#: src/tables/stock/StockItemTable.tsx:417
msgid "Expired After"
-msgstr ""
+msgstr "Udløbet Efter"
#: src/tables/stock/StockItemTable.tsx:418
msgid "Show items which expired after this date"
-msgstr ""
+msgstr "Vis elementer som er udløbet efter denne dato"
#: src/tables/stock/StockItemTable.tsx:424
msgid "Updated Before"
-msgstr ""
+msgstr "Opdateret Før"
#: src/tables/stock/StockItemTable.tsx:425
msgid "Show items updated before this date"
-msgstr ""
+msgstr "Vis elementer opdateret før denne dato"
#: src/tables/stock/StockItemTable.tsx:430
msgid "Updated After"
-msgstr ""
+msgstr "Opdateret Efter"
#: src/tables/stock/StockItemTable.tsx:431
msgid "Show items updated after this date"
-msgstr ""
+msgstr "Vis elementer opdateret efter denne dato"
#: src/tables/stock/StockItemTable.tsx:436
msgid "Stocktake Before"
@@ -12215,11 +12246,11 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:448
msgid "External Location"
-msgstr ""
+msgstr "Ekstern Lokation"
#: src/tables/stock/StockItemTable.tsx:449
msgid "Show items in an external location"
-msgstr ""
+msgstr "Vis elementer på en ekstern lokation"
#: src/tables/stock/StockItemTable.tsx:528
#~ msgid "Delete stock items"
@@ -12227,7 +12258,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:559
msgid "Order items"
-msgstr ""
+msgstr "Bestil varer"
#: src/tables/stock/StockItemTable.tsx:595
#~ msgid "Add a new stock item"
@@ -12275,53 +12306,53 @@ msgstr ""
#: src/tables/stock/StockItemTestResultTable.tsx:144
msgid "Test"
-msgstr ""
+msgstr "Test"
#: src/tables/stock/StockItemTestResultTable.tsx:180
msgid "Test result for installed stock item"
-msgstr ""
+msgstr "Test resultat for installeret lagervare"
#: src/tables/stock/StockItemTestResultTable.tsx:211
msgid "Attachment"
-msgstr ""
+msgstr "Vedhæftning"
#: src/tables/stock/StockItemTestResultTable.tsx:227
msgid "Test station"
-msgstr ""
+msgstr "Test station"
#: src/tables/stock/StockItemTestResultTable.tsx:249
msgid "Finished"
-msgstr ""
+msgstr "Færdig"
#: src/tables/stock/StockItemTestResultTable.tsx:307
#: src/tables/stock/StockItemTestResultTable.tsx:378
msgid "Edit Test Result"
-msgstr ""
+msgstr "Rediger Testresultat"
#: src/tables/stock/StockItemTestResultTable.tsx:309
msgid "Test result updated"
-msgstr ""
+msgstr "Test resultat opdateret"
#: src/tables/stock/StockItemTestResultTable.tsx:315
#: src/tables/stock/StockItemTestResultTable.tsx:387
msgid "Delete Test Result"
-msgstr ""
+msgstr "Slet Testresultat"
#: src/tables/stock/StockItemTestResultTable.tsx:317
msgid "Test result deleted"
-msgstr ""
+msgstr "Test resultat slettet"
#: src/tables/stock/StockItemTestResultTable.tsx:331
msgid "Test Passed"
-msgstr ""
+msgstr "Test Gennemført"
#: src/tables/stock/StockItemTestResultTable.tsx:332
msgid "Test result has been recorded"
-msgstr ""
+msgstr "Testresultatet er blevet registreret"
#: src/tables/stock/StockItemTestResultTable.tsx:339
msgid "Failed to record test result"
-msgstr ""
+msgstr "Fejlet at registrere testresultatet"
#: src/tables/stock/StockItemTestResultTable.tsx:356
msgid "Pass Test"
@@ -12329,7 +12360,7 @@ msgstr ""
#: src/tables/stock/StockItemTestResultTable.tsx:405
msgid "Show results for required tests"
-msgstr ""
+msgstr "Vis resultater for påkrævede tests"
#: src/tables/stock/StockItemTestResultTable.tsx:409
msgid "Include Installed"
@@ -12337,19 +12368,19 @@ msgstr ""
#: src/tables/stock/StockItemTestResultTable.tsx:410
msgid "Show results for installed stock items"
-msgstr ""
+msgstr "Vis resultater for installerede lagervarer"
#: src/tables/stock/StockItemTestResultTable.tsx:414
msgid "Passed"
-msgstr ""
+msgstr "Gennemført"
#: src/tables/stock/StockItemTestResultTable.tsx:415
msgid "Show only passed tests"
-msgstr ""
+msgstr "Vis kun bestået tests"
#: src/tables/stock/StockItemTestResultTable.tsx:420
msgid "Show results for enabled tests"
-msgstr ""
+msgstr "Vis resultater for aktiverede tests"
#: src/tables/stock/StockLocationTable.tsx:38
#~ msgid "structural"
@@ -12357,7 +12388,7 @@ msgstr ""
#: src/tables/stock/StockLocationTable.tsx:39
msgid "Include sublocations in results"
-msgstr ""
+msgstr "Inkluder under lokation i resultater"
#: src/tables/stock/StockLocationTable.tsx:43
#~ msgid "external"
@@ -12365,44 +12396,44 @@ msgstr ""
#: src/tables/stock/StockLocationTable.tsx:44
msgid "Show structural locations"
-msgstr ""
+msgstr "Vis strukturelle lokationer"
#: src/tables/stock/StockLocationTable.tsx:49
msgid "Show external locations"
-msgstr ""
+msgstr "Vis eksterne lokationer"
#: src/tables/stock/StockLocationTable.tsx:53
msgid "Has location type"
-msgstr ""
+msgstr "Har lokationstype"
#: src/tables/stock/StockLocationTable.tsx:58
msgid "Filter by location type"
-msgstr ""
+msgstr "Filtrer efter lokationstype"
#: src/tables/stock/StockLocationTable.tsx:105
#: src/tables/stock/StockLocationTable.tsx:160
msgid "Add Stock Location"
-msgstr ""
+msgstr "Tilføj Lagerlokation"
#: src/tables/stock/StockLocationTable.tsx:129
msgid "Set Parent Location"
-msgstr ""
+msgstr "Sæt Overordnet Lokation"
#: src/tables/stock/StockLocationTable.tsx:149
msgid "Set parent location for the selected items"
-msgstr ""
+msgstr "Sæt overordnet placering for de valgte elementer"
#: src/tables/stock/StockTrackingTable.tsx:77
msgid "Added"
-msgstr ""
+msgstr "Tilføjet"
#: src/tables/stock/StockTrackingTable.tsx:82
msgid "Removed"
-msgstr ""
+msgstr "Fjernet"
#: src/tables/stock/StockTrackingTable.tsx:221
msgid "No user information"
-msgstr ""
+msgstr "Ingen brugerinformation"
#: src/tables/stock/TestStatisticsTable.tsx:34
#: src/tables/stock/TestStatisticsTable.tsx:64
@@ -12411,7 +12442,7 @@ msgstr ""
#: src/views/MobileAppView.tsx:25
msgid "Mobile viewport detected"
-msgstr ""
+msgstr "Mobil viewport fundet"
#: src/views/MobileAppView.tsx:25
#~ msgid "Platform UI is optimized for Tablets and Desktops, you can use the official app for a mobile experience."
@@ -12419,13 +12450,13 @@ msgstr ""
#: src/views/MobileAppView.tsx:28
msgid "InvenTree UI is optimized for Tablets and Desktops, you can use the official app for a mobile experience."
-msgstr ""
+msgstr "InvenTree UI er optimeret til Tabletter og Desktops, du kan bruge den officielle app til en mobil oplevelse."
#: src/views/MobileAppView.tsx:34
msgid "Read the docs"
-msgstr ""
+msgstr "Læs dokumenterne"
#: src/views/MobileAppView.tsx:42
msgid "Ignore and continue to Desktop view"
-msgstr ""
+msgstr "Ignorer og fortsæt til skrivebordsvisning"
diff --git a/src/frontend/src/locales/de/messages.po b/src/frontend/src/locales/de/messages.po
index 47fef582f8..114b272404 100644
--- a/src/frontend/src/locales/de/messages.po
+++ b/src/frontend/src/locales/de/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: de\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Löschen"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Abbrechen"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Aktionen"
@@ -73,7 +73,7 @@ msgstr "Aktionen"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Suche"
@@ -97,12 +97,12 @@ msgstr "Nein"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Nein"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Teil"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Teile"
@@ -149,14 +150,14 @@ msgstr "Teile"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Parameter"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parameter"
@@ -168,7 +169,7 @@ msgstr "Parameter Vorlage"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Parameter Vorlagen"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "Teilkategorie"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Teil-Kategorien"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Lagerartikel"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Lagerartikel"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Lagerort"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Lagerorte"
@@ -267,7 +268,7 @@ msgstr "Lagerort Typen"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Lagerhistorie"
@@ -340,11 +341,11 @@ msgstr "Einkaufsbestellung"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Bestellungen"
@@ -373,10 +374,10 @@ msgstr "Verkaufsauftrag"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Aufträge"
@@ -398,10 +399,10 @@ msgstr "Rückgabe Auftrag"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Reklamationen"
@@ -536,7 +537,7 @@ msgstr "Auswahlliste"
#: lib/enums/ModelInformation.tsx:285
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:21
msgid "Selection Lists"
-msgstr "Auswahlliste"
+msgstr "Auswahllisten"
#: lib/enums/ModelInformation.tsx:291
#: src/components/barcodes/BarcodeInput.tsx:114
@@ -546,23 +547,23 @@ msgstr "Auswahlliste"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Bauaufträge"
@@ -597,11 +598,11 @@ msgstr "Bauaufträge"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Fehler beim darstellen der Komponente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Beim Rendern dieser Komponente ist ein Fehler aufgetreten. Weitere Informationen stehen in der Konsole."
@@ -637,7 +638,7 @@ msgstr "Barcode"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Scannen"
@@ -798,12 +799,12 @@ msgstr "Drucke Berichte"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Etiketten Drucken"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Drucken"
@@ -819,19 +820,19 @@ msgstr "Drucken"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Bericht drucken"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Druck Aktionen"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Etiketten drucken"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Berichte drucken"
@@ -860,8 +861,8 @@ msgstr "Sie werden zum Anbieter weitergeleitet, um weitere Schritte durchzuführ
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Barcodescanner öffnen"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Layout übernehmen"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Verknüpftes Bild von diesem Teil entfernen?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Leeren"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Speichern"
@@ -1579,21 +1580,21 @@ msgstr "Erfolgreich eingeloggt"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Login fehlgeschlagen"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Überprüfen Sie Ihre Eingabe und versuchen Sie es erneut."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Mail erfolgreich gesendet"
@@ -1628,7 +1629,7 @@ msgstr "Ihr Benutzername"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Passwort"
@@ -1732,7 +1733,7 @@ msgstr "Adresse"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API-Version"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1852,15 +1854,15 @@ msgstr "Läuft"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "Datei zum Hochladen auswählen"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "Vorgeschlagenen Wert akzeptieren"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "Datum auswählen"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
@@ -1892,7 +1894,7 @@ msgstr "{0} Symbole"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Wird geladen"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Daten werden verarbeiten"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Ein Fehler ist aufgetreten"
@@ -2002,31 +2004,31 @@ msgstr "Spalte auswählen oder leer lassen, um dieses Feld zu ignorieren."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Dieses Feld ignorieren"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Spalten zu Datenbankfeldern zuordnen"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Spaltenzuordnung akzeptieren"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Datenbankfeld"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Feldbeschreibung"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Importierte Spalte"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Standard-Wert"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Spalten zuordnen"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Daten importieren"
+msgid "Import Rows"
+msgstr "Zeilen importieren"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Daten wurden erfolgreich importiert"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Schließen"
@@ -2208,7 +2214,7 @@ msgstr "Gruppen-Rollen werden aktualisiert"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Rolle"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Anzeigen"
@@ -2255,10 +2261,10 @@ msgstr "Keine Gegengenstände"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Links"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentation"
@@ -2547,7 +2553,7 @@ msgstr "Einstellungen"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Benutzer-Einstellungen"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Einstellungen"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Adminbereich"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Abmelden"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2701,11 +2707,11 @@ msgstr "Ergebnisse"
#: src/components/nav/SearchDrawer.tsx:144
msgid "Remove search group"
-msgstr ""
+msgstr "Suchgruppe entfernen"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2749,7 +2755,7 @@ msgstr "Regex Suche"
#: src/components/nav/SearchDrawer.tsx:527
msgid "Notes search"
-msgstr ""
+msgstr "Notizen durchsuchen"
#: src/components/nav/SearchDrawer.tsx:575
msgid "An error occurred during search query"
@@ -2819,7 +2825,7 @@ msgstr "Plugin-Informationen"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Sendung"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inaktiv"
@@ -3001,7 +3007,7 @@ msgstr "Kein Bestand"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "In Bestellung"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategorie"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategorie"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Lagerort"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Seriennummer"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Seriennummer"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Anzahl"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Losnummer"
@@ -3147,7 +3152,7 @@ msgstr ""
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
-msgstr ""
+msgstr "Melde einen Bug oder frage ein Feature auf Github an"
#: src/components/settings/QuickAction.tsx:88
msgid "Open Issue"
@@ -3155,27 +3160,27 @@ msgstr ""
#: src/components/settings/QuickAction.tsx:97
msgid "Add New Group"
-msgstr ""
+msgstr "Neue Gruppe erstellen"
#: src/components/settings/QuickAction.tsx:98
msgid "Create a new group to manage your users"
-msgstr ""
+msgstr "Erstelle eine neue Gruppe, um Benutzer zu verwalten"
#: src/components/settings/QuickAction.tsx:100
msgid "New Group"
-msgstr ""
+msgstr "Neue Gruppe"
#: src/components/settings/QuickAction.tsx:105
msgid "Add New User"
-msgstr ""
+msgstr "Neuen Benutzer erstellen"
#: src/components/settings/QuickAction.tsx:106
msgid "Create a new user to manage your groups"
-msgstr ""
+msgstr "Erstelle einen neuen Benutzer, um Gruppen zu verwalten"
#: src/components/settings/QuickAction.tsx:108
msgid "New User"
-msgstr ""
+msgstr "Neuer Benutzter"
#: src/components/settings/QuickAction.tsx:114
msgid "Create a new project code to organize your items"
@@ -3183,7 +3188,7 @@ msgstr ""
#: src/components/settings/QuickAction.tsx:116
msgid "Add Code"
-msgstr ""
+msgstr "Code hinzufügen"
#: src/components/settings/QuickAction.tsx:121
msgid "Add Custom State"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Einstellungen bearbeiten"
@@ -3206,32 +3219,32 @@ msgstr "Einstellungen bearbeiten"
msgid "Setting {key} updated successfully"
msgstr "Einstellung {key} erfolgreich aktualisiert"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Einstellung aktualisiert"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Einstellung {0} erfolgreich aktualisiert"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Fehler beim Bearbeiten der Einstellung"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Fehler beim Laden der Einstellungen."
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Keine Einstellung"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Es sind keine konfigurierbaren Einstellungen verfügbar"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Keine Einstellungen angegeben"
@@ -3593,7 +3606,7 @@ msgstr "Keine Einstellungen angegeben"
#: src/components/wizards/ImportPartWizard.tsx:105
msgid "Exact Match"
-msgstr ""
+msgstr "Exakte Übereinstimmung"
#: src/components/wizards/ImportPartWizard.tsx:112
msgid "Current part"
@@ -3601,7 +3614,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:118
msgid "Already Imported"
-msgstr ""
+msgstr "Bereits importiert"
#: src/components/wizards/ImportPartWizard.tsx:205
#: src/pages/company/CompanyDetail.tsx:137
@@ -3630,16 +3643,16 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:224
msgid "Select supplier"
-msgstr ""
+msgstr "Zulieferer auswählen"
#. placeholder {0}: searchResults.length
#: src/components/wizards/ImportPartWizard.tsx:246
msgid "Found {0} results"
-msgstr ""
+msgstr "{0} Ergebnisse gefunden"
#: src/components/wizards/ImportPartWizard.tsx:259
msgid "Import this part"
-msgstr ""
+msgstr "Dieses Teil importieren"
#: src/components/wizards/ImportPartWizard.tsx:313
msgid "Are you sure you want to import this part into the selected category now?"
@@ -3651,7 +3664,7 @@ msgstr "Jetzt importieren"
#: src/components/wizards/ImportPartWizard.tsx:372
msgid "Select and edit the parameters you want to add to this part."
-msgstr ""
+msgstr "Wähle und editiere die Parameter die dem Teil hinzugefügt werden."
#: src/components/wizards/ImportPartWizard.tsx:379
msgid "Default category parameters"
@@ -3667,7 +3680,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:468
msgid "Skip"
-msgstr ""
+msgstr "Überspringen"
#: src/components/wizards/ImportPartWizard.tsx:476
msgid "Create Parameters"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Teil bearbeiten"
@@ -3701,7 +3714,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:655
msgid "Import"
-msgstr ""
+msgstr "Importieren"
#: src/components/wizards/ImportPartWizard.tsx:692
msgid "Parameters created successfully!"
@@ -3735,7 +3748,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:803
msgid "Import Supplier Part"
-msgstr ""
+msgstr "Zuliefererteil importieren"
#: src/components/wizards/ImportPartWizard.tsx:805
msgid "Search Supplier Part"
@@ -3743,7 +3756,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:807
msgid "Confirm import"
-msgstr ""
+msgstr "Import bestätigen"
#: src/components/wizards/ImportPartWizard.tsx:809
msgid "Done"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Teile bestellen"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Gehe zum InvenTree Dashboard"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Besuche die Dokumentation, um mehr über InvenTree zu erfahren"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Über die InvenTree Organisation"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Server Informationen"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Über diese InvenTree Instanz"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Lizenz Informationen"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Lizenzen für Abhängigkeiten des Services"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Navigation öffnen"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Hauptnavigationsmenü öffnen"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Barcode oder QR-Code scannen"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Zum Administrationsbereich"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Ersatz-Teil hinzugefügt"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Bauprodukt"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Bauprodukt fertigstellen"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Bauprodukte wurden fertiggestellt"
@@ -4428,24 +4445,24 @@ msgstr "Bauprodukte wurden fertiggestellt"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Bauprodukte verschrotten"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Bauprodukte wurden verschrottet"
@@ -4453,24 +4470,24 @@ msgstr "Bauprodukte wurden verschrottet"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Bauprodukte abbrechen"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Bauprodukte wurden abgebrochen"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Bauprodukte wurden abgebrochen"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Zugewiesen"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Quell Lagerort"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr "Bestand zuweisen"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr "Lagerbestand verbrauchen"
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr "Lagerbestand verbrauchen"
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "komplett verbraucht"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "abonniert"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Benachrichtigungen für dieses Teil abonnieren"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Übergeordnete Teilkategorie"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Benachrichtigungen für diese Kategorie abonnieren"
@@ -4690,8 +4707,8 @@ msgstr "Bei bereits vorhandenen Lagerbestand einbuchen"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Zurück"
msgid "Count"
msgstr "Anzahl"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Bestand hinzufügen"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Bestand hinzugefügt"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Menge der ausgewählten Bestandteile um einen bestimmten Betrag erhöhen"
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Bestand entfernen"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Bestand entfernt"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Menge der ausgewählten Bestandteile um einen bestimmten Betrag reduzieren"
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Bestand verschieben"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Bestand übertragen"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Ausgewählte Elemente an den angegebenen Ort übertragen."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Lagerbestand zurückgeben"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Lagerbestand zurückgegeben"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Bestand zählen"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Lagerbestand gezählt"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Bestandsstatus ändern"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Bestandstatus geändert"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Status der ausgewählten Lagerartikel ändern."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Bestand zusammenführen"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Lagerbestand zusammengeführt"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Lagerbestand zusammenführen"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "Das Zusammenführen kann nicht rückgängig gemacht werden"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Tracking-Informationen können beim Zusammenführen von Elementen verloren gehen"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "Lieferanteninformationen können beim Zusammenführen verloren gehen"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Lagerbestand einem Kunden zuweisen"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Lagerbestand wurde Kunden zugewiesen"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Bestand löschen"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Lagerbestand gelöscht"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Dieser Vorgang löscht die ausgewählten Lagerbestandteile unwiderruflich."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Übergeordneter Lagerort"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Seriennummer finden"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Keine passenden Elemente"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Mehrere passende Elemente"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Ungültige Antwort vom Server"
@@ -5062,99 +5079,110 @@ msgstr "Interner Serverfehler"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Bereits angemeldet"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "Es gibt eine widersprüchliche Sitzung auf dem Server für diesen Browser. Bitte zuerst abmelden."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Ausgeloggt"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "MFA Anmeldung erfolgreich"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "MFA-Details wurden automatisch im Browser angegeben"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Ausgeloggt"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Erfolgreich abgemeldet"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Sprache geändert"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Die aktive Sprache wurde auf die Sprache des Profils geändert"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Design geändert"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Das aktive Design wurde zu dem im Profil eingestellten geändert"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Prüfen Sie Ihren Posteingang für einen Link zum Zurücksetzen. Dies funktioniert nur, wenn Sie ein Konto haben. Prüfen Sie auch den Spam-Ordner."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Zurücksetzen fehlgeschlagen"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Bereits angemeldet"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Es gibt eine widersprüchliche Sitzung auf dem Server für diesen Browser. Bitte zuerst abmelden."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Angemeldet"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Erfolgreich angemeldet"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "MFA konnte nicht eingerichtet werden"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Passwort festgelegt"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Das Passwort wurde erfolgreich festgelegt. Sie können sich jetzt mit Ihrem neuen Passwort anmelden"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Passwort konnte nicht geändert werden"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "Die beiden Passwortfelder stimmten nicht überein."
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Passwort geändert"
@@ -5210,11 +5238,11 @@ msgstr "Bei der Anfrage ist eine Zeitüberschreitung aufgetreten"
msgid "Exporting Data"
msgstr "Daten werden exportiert"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Daten exportieren"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Export"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Ausgewählte Lagerartikel löschen"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Lager-Aktionen"
@@ -5383,12 +5411,12 @@ msgstr "Nicht registriert?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Multi-Faktor-Authentifizierung"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP Code"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Position"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Typ"
@@ -5933,220 +5961,220 @@ msgstr "Profil bearbeiten"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Passwort eingeben"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Fehler beim Registrieren des TOTP-Token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "TOTP Token registrieren"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Wiederherstellungscodes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Zeitbasiertes Einmalpasswort"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Einmalige vorerzeugte Wiederherstellungscodes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Zuletzt verwendet am"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Erstellt am"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Nicht konfiguriert"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr "Einmalpasswort"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "TOPT-Code eingeben, um eine erfolgreiche Registrierung sicherzustellen"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "E-Mail-Adressen"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E-Mail-Adressen"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Single Sign On"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Nicht aktiviert"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "Single Sign On ist für diesen Server nicht aktiviert "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Nicht aktiviert"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Single Sign On ist für diesen Server nicht aktiviert "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Access Token"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Sitzungsinformationen"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Sitzungsinformationen"
msgid "Timestamp"
msgstr "Zeitstempel"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Methode"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Fehler beim Aktualisieren der E-Mail"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Derzeit sind keine E-Mail-Adressen registriert."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Die folgenden E-Mail-Adressen sind mit deinem Konto verknüpft:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primär"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verifiziert"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Unbestätigt"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Primär machen"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Senden Sie die Bestätigung erneut"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Emailadresse hinzufügen"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-Mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-Mail Adresse"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Fehler beim Hinzufügen der E-Mail"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Emailadresse hinzufügen"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-Mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-Mail Adresse"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Fehler beim Hinzufügen der E-Mail"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "E-Mail hinzufügen"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Fehler beim Hinzufügen der E-Mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "E-Mail hinzufügen"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "Es sind keine Anbieter mit diesem Konto verbunden."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "Sie können sich mit einem der folgenden Anbieter in Ihr Konto einloggen"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Anbieter-Link entfernen"
@@ -6921,7 +6949,7 @@ msgstr "Benutzerdefinierter Status"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Unter-Bauaufträge"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Externe Bauaufträge anzeigen"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Tabellenansicht"
@@ -7245,6 +7274,7 @@ msgstr "Kalenderansicht"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Externer Link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Teil-Details"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Zuliefererteil hinzufügen"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Kein Bestand"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Basis-Benutzer"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Unterkategorien"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Elemente in übergeordnete Kategorie verschieben"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Elemente löschen"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Verkäufliches Teil"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Erstellt von"
msgid "Default Supplier"
msgstr "Standard Zulieferer"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Standard Ablaufdatum"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "Tage"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Preisspanne"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "letzte Seriennummer"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varianten"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
-msgstr "Ferienguthaben/Freitage"
+msgstr "Zuweisungen"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Stückliste"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Verwendet in"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Teilbepreisung"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Testvorlagen"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Zugehörige Teile"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Teil ist gesperrt"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Erforderlich"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Teil hinzufügen"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Teil löschen"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Das Löschen dieses Teils kann nicht rückgängig gemacht werden"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Bestellung"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Bestand bestellen"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Nach Seriennummer suchen"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Teile-Aktionen"
@@ -8008,8 +8038,8 @@ msgstr "Maximaler Wert"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maximaler Wert"
msgid "Total Price"
msgstr "Gesamtpreis"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Komponente"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Niedrigster Preis"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Höchster Preis"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Höchster Preis"
msgid "Unit Price"
msgstr "Preis pro Einheit"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Kuchendiagramm"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Balkendiagramm"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Übergeordneter Lagerort"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Unter-Lagerorte"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Lagerort Typ"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Oberster Lagerort"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Lagerort-Details"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Standardteile"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Lagerort bearbeiten"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Lagerort löschen"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Bestandsaktionen"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Aktion für Lagerartikel an diesem Lagerort"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Lagerort bearbeiten"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Lagerort löschen"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Bestandsaktionen"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Aktion für Lagerartikel an diesem Lagerort"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Aktion für untergeordnete Lagerorte an diesem Lagerort"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Lagerort Aktionen"
@@ -8917,6 +8947,7 @@ msgstr "Zeige Bestand mit Seriennummer"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Filter hinzufügen"
msgid "Clear Filters"
msgstr "Filter zurücksetzen"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Keine Einträge gefunden"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Fehler beim Laden der Tabellenoptionen"
@@ -9156,7 +9187,7 @@ msgstr "Fehler beim Laden der Tabellenoptionen"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Der Server hat einen falschen Datentyp zurückgegeben"
@@ -9176,7 +9207,7 @@ msgstr "Der Server hat einen falschen Datentyp zurückgegeben"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Fehler beim Laden der Tabellendaten"
@@ -9190,11 +9221,11 @@ msgstr "Fehler beim Laden der Tabellendaten"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr " Details anzeigen"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr "Element anzeigen"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Position hinzufügen"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Position bearbeiten"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Benötigter Bestand"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Position empfangen"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Erhaltene Artikel"
diff --git a/src/frontend/src/locales/el/messages.po b/src/frontend/src/locales/el/messages.po
index baeb520f79..d8665d5a55 100644
--- a/src/frontend/src/locales/el/messages.po
+++ b/src/frontend/src/locales/el/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: el\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Greek\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Διαγραφή"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Ακύρωση"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Ενέργειες"
@@ -73,7 +73,7 @@ msgstr "Ενέργειες"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Αναζήτηση"
@@ -97,12 +97,12 @@ msgstr "Όχι"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Όχι"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Προϊόν"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Προϊόντα"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Παράμετροι"
@@ -218,14 +219,14 @@ msgstr "Κατηγορία Προϊόντος"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Κατηγορίες Προϊόντων"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Προϊόν Αποθέματος"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Προϊόντα Αποθέματος"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Τοποθεσία Αποθέματος"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Τοποθεσίες Αποθέματος"
@@ -267,7 +268,7 @@ msgstr "Τύποι Τοποθεσιών Αποθέματος"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Ιστορικό Αποθέματος"
@@ -340,11 +341,11 @@ msgstr "Εντολή Αγοράς"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Εντολές Αγοράς"
@@ -373,10 +374,10 @@ msgstr "Εντολή Πώλησης"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Εντολές Πώλησης"
@@ -398,10 +399,10 @@ msgstr "Εντολή Επιστροφής"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Εντολές Επιστροφής"
@@ -546,23 +547,23 @@ msgstr "Λίστες Επιλογών"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Διαχειριστής"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Εντολές Κατασκευής"
@@ -597,11 +598,11 @@ msgstr "Εντολές Κατασκευής"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Σφάλμα κατά την απόδοση του component"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr "Γραμμοκώδικας"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Σάρωση"
@@ -798,12 +799,12 @@ msgstr "Εκτύπωση Αναφορών"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Εκτύπωση Ετικέτας"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Εκτύπωση"
@@ -819,19 +820,19 @@ msgstr "Εκτύπωση"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Εκτύπωση Αναφοράς"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Ενέργειες Εκτύπωσης"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Εκτύπωση Ετικετών"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Εκτύπωση Αναφορών"
@@ -860,8 +861,8 @@ msgstr "Θα ανακατευθυνθείτε στον πάροχο για πε
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Άνοιγμα Σαρωτή Γραμμοκώδικα"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Αποδοχή Διάταξης"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Αφαίρεση της σχετικής εικόνας από αυτό
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Εκκαθάριση"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Υποβολή"
@@ -1579,21 +1580,21 @@ msgstr "Συνδεθήκατε με επιτυχία"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Αποτυχία σύνδεσης"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Ελέγξτε τα στοιχεία σας και προσπαθήστε ξανά."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Το email στάλθηκε με επιτυχία"
@@ -1628,7 +1629,7 @@ msgstr "Το όνομα χρήστη σας"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Κωδικός πρόσβασης"
@@ -1732,7 +1733,7 @@ msgstr "Υπολογιστής/Host"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Έκδοση API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} εικονίδια"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Φόρτωση"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Επεξεργασία δεδομένων"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Παρουσιάστηκε σφάλμα"
@@ -2002,31 +2004,31 @@ msgstr "Επιλέξτε στήλη ή αφήστε κενό για να αγν
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Αγνόηση αυτού του πεδίου"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Αντιστοίχιση στηλών δεδομένων με πεδία βάσης δεδομένων"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Αποδοχή αντιστοίχισης στηλών"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Πεδίο βάσης δεδομένων"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Περιγραφή πεδίου"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Εισαγόμενη στήλη"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Προεπιλεγμένη τιμή"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Αντιστοίχιση στηλών"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Εισαγωγή δεδομένων"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Τα δεδομένα εισήχθησαν με επιτυχία"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Κλείσιμο"
@@ -2208,7 +2214,7 @@ msgstr "Ενημέρωση ρόλων ομάδας"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Ρόλος"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Προβολή"
@@ -2255,10 +2261,10 @@ msgstr "Κανένα στοιχείο"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Σύνδεσμοι"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Τεκμηρίωση"
@@ -2547,7 +2553,7 @@ msgstr "Ρυθμίσεις"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Ρυθμίσεις χρήστη"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Ρυθμίσεις συστήματος"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Κέντρο διαχείρισης"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Αποσύνδεση"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Αφαίρεση ομάδας αναζήτησης"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Πληροφορίες πρόσθετου"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Αποστολή"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Ανενεργό"
@@ -3001,7 +3007,7 @@ msgstr "Χωρίς απόθεμα"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "Σε παραγγελία"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Κατηγορία"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Κατηγορία"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Τοποθεσία"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Σειριακός αριθμός"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Σειριακός αριθμός"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Ποσότητα"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Παραγωγική παρτίδα"
@@ -3193,11 +3198,19 @@ msgstr "Προσθήκη προσαρμοσμένης κατάστασης"
msgid "Create a new custom state for your workflow"
msgstr "Δημιουργία προσαρμοσμένης κατάστασης για τη ροή εργασίας"
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Επεξεργασία ρύθμισης"
@@ -3206,32 +3219,32 @@ msgstr "Επεξεργασία ρύθμισης"
msgid "Setting {key} updated successfully"
msgstr "Η ρύθμιση {key} ενημερώθηκε με επιτυχία"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Η ρύθμιση ενημερώθηκε"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Η ρύθμιση {0} ενημερώθηκε με επιτυχία"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Σφάλμα κατά την επεξεργασία της ρύθμισης"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Σφάλμα φόρτωσης ρυθμίσεων"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Δεν υπάρχουν ρυθμίσεις"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Δεν υπάρχουν διαθέσιμες ρυθμίσεις προς διαμόρφωση"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Δεν καθορίστηκαν ρυθμίσεις"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr "Επόμενο"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Επεξεργασία Προϊόντος"
@@ -3770,13 +3783,13 @@ msgstr "Απαιτήσεις πωλήσεων"
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Παραγγελία Προϊόντων"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Μετάβαση στο InvenTree dashboard"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Επισκεφθείτε την τεκμηρίωση για να μάθετε περισσότερα για το InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Σχετικά με τον οργανισμό InvenTree"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Πληροφορίες διακομιστή"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Σχετικά με αυτήν την εγκατάσταση InvenTree"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Πληροφορίες άδειας"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Άδειες για τις εξαρτήσεις της υπηρεσίας"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Άνοιγμα πλοήγησης"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Άνοιγμα του κύριου μενού πλοήγησης"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Σάρωση barcode ή QR code"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr "Μετάβαση στις ρυθμίσεις χρήστη"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr "Μετάβαση στις Εντολές Αγοράς"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr "Μετάβαση στις Εντολές Πώλησης"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr "Μετάβαση στις Εντολές Επιστροφής"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr "Μετάβαση στις Εντολές Κατασκευής"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr "Μετάβαση στις Ρυθμίσεις Συστήματος"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Μετάβαση στο Κέντρο Διαχείρισης"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Το υποκατάστατο προστέθηκε"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Αποτέλεσμα κατασκευής"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr "Ποσότητα προς ολοκλήρωση"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr "Ποσότητα προς ολοκλήρωση"
msgid "Status"
msgstr "Κατάσταση"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Ολοκλήρωση αποτελεσμάτων κατασκευής"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Τα αποτελέσματα κατασκευής ολοκληρώθηκαν"
@@ -4428,24 +4445,24 @@ msgstr "Τα αποτελέσματα κατασκευής ολοκληρώθη
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr "Ποσότητα προς απόρριψη"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Απόρριψη αποτελεσμάτων κατασκευής"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Τα επιλεγμένα αποτελέσματα κατασκευής θα ολοκληρωθούν αλλά θα σημανθούν ως απορριφθέντα"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Τα δεσμευμένα είδη αποθέματος θα καταναλωθούν"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Τα αποτελέσματα κατασκευής έχουν απορριφθεί"
@@ -4453,24 +4470,24 @@ msgstr "Τα αποτελέσματα κατασκευής έχουν απορρ
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Ακύρωση αποτελεσμάτων κατασκευής"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Τα επιλεγμένα αποτελέσματα κατασκευής θα αφαιρεθούν"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Τα δεσμευμένα είδη θα επιστραφούν στο απόθεμα"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Τα αποτελέσματα κατασκευής ακυρώθηκαν"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Τα αποτελέσματα κατασκευής ακυρώθηκαν"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Δεσμευμένο"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Τοποθεσία προέλευσης"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Επιλέξτε την τοποθεσία προέλευσης για τη δέσμευση αποθέματος"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Επιλέξτε την τοποθεσία προέλευσης για
msgid "Allocate Stock"
msgstr "Δέσμευση αποθέματος"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Τα είδη αποθέματος δεσμεύτηκαν"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Τα είδη αποθέματος δεσμεύτηκαν"
msgid "Consume Stock"
msgstr "Κατανάλωση αποθέματος"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Πλήρως καταναλωμένο"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr "Επιλέξτε κωδικό έργου για αυτό το Προϊό
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr "Επιλέξτε κωδικό έργου για αυτό το Προϊό
msgid "Subscribed"
msgstr "Σε εγγραφή"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Εγγραφή σε ειδοποιήσεις για αυτό το Προϊόν"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Γονική κατηγορία Προϊόντος"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Εγγραφή σε ειδοποιήσεις για αυτή την κατηγορία"
@@ -4690,8 +4707,8 @@ msgstr "Αποθήκευση με ήδη παραληφθέν απόθεμα"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Επιστροφή"
msgid "Count"
msgstr "Καταμέτρηση"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Προσθήκη αποθέματος"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Το απόθεμα προστέθηκε"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Αυξήστε την ποσότητα των επιλεγμένων ειδών αποθέματος κατά μια δεδομένη τιμή."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Αφαίρεση αποθέματος"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Το απόθεμα αφαιρέθηκε"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Μείωση της ποσότητας των επιλεγμένων ειδών αποθέματος κατά μια δεδομένη τιμή."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Μεταφορά αποθέματος"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Το απόθεμα μεταφέρθηκε"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Μεταφέρετε τα επιλεγμένα είδη στην καθορισμένη τοποθεσία."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Επιστροφή αποθέματος"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Το απόθεμα επιστράφηκε"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Επιστροφή των επιλεγμένων ειδών στο απόθεμα, στην καθορισμένη τοποθεσία."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Καταμέτρηση αποθέματος"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Το απόθεμα καταμετρήθηκε"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Καταμετρήστε τα επιλεγμένα είδη αποθέματος και προσαρμόστε την ποσότητα ανάλογα."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Αλλαγή κατάστασης αποθέματος"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Η κατάσταση αποθέματος άλλαξε"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Αλλαγή της κατάστασης των επιλεγμένων ειδών αποθέματος."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Συγχώνευση αποθέματος"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Το απόθεμα συγχωνεύτηκε"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Συγχώνευση ειδών αποθέματος"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "Η ενέργεια συγχώνευσης δεν μπορεί να αναιρεθεί"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Οι πληροφορίες ιχνηλάτησης μπορεί να χαθούν κατά τη συγχώνευση"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "Οι πληροφορίες προμηθευτή μπορεί να χαθούν κατά τη συγχώνευση"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Ανάθεση αποθέματος σε πελάτη"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Το απόθεμα ανατέθηκε στον πελάτη"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Διαγραφή ειδών αποθέματος"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Το απόθεμα διαγράφηκε"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Αυτή η ενέργεια θα διαγράψει μόνιμα τα επιλεγμένα είδη αποθέματος."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Γονική τοποθεσία αποθέματος"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Εύρεση σειριακού αριθμού"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Δεν βρέθηκαν αντίστοιχα είδη"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Πολλαπλά αντίστοιχα είδη"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Μη έγκυρη απόκριση από τον διακομιστή"
@@ -5062,99 +5079,110 @@ msgstr "Εσωτερικό σφάλμα διακομιστή"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Ήδη συνδεδεμένος"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "Υπάρχει αντικρουόμενη συνεδρία στον διακομιστή για αυτόν τον browser. Παρακαλώ αποσυνδεθείτε πρώτα από αυτή."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Αποσυνδεθήκατε"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "Δεν υπάρχει απόκριση από τον διακομιστή."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Δεν υπάρχει απόκριση από τον διακομιστή."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "Επιτυχής σύνδεση με MFA"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "Οι λεπτομέρειες MFA παρέχθηκαν αυτόματα από τον browser"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Αποσυνδεθήκατε"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Αποσυνδεθήκατε με επιτυχία"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Η γλώσσα άλλαξε"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Η ενεργή γλώσσα σας άλλαξε σε αυτή που έχει οριστεί στο προφίλ σας"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Το θέμα άλλαξε"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Το ενεργό θέμα άλλαξε σε αυτό που έχει οριστεί στο προφίλ σας"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Ελέγξτε τα εισερχόμενά σας για τον σύνδεσμο επαναφοράς. Λειτουργεί μόνο αν έχετε λογαριασμό. Ελέγξτε και στα spam."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Η επαναφορά απέτυχε"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Ήδη συνδεδεμένος"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Υπάρχει αντικρουόμενη συνεδρία στον διακομιστή για αυτόν τον browser. Παρακαλώ αποσυνδεθείτε πρώτα από αυτή."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Συνδεθήκατε"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Συνδεθήκατε με επιτυχία"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Αποτυχία ρύθμισης MFA"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Ο κωδικός ορίστηκε"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Ο κωδικός ορίστηκε με επιτυχία. Μπορείτε πλέον να συνδεθείτε με τον νέο σας κωδικό"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Ο κωδικός δεν μπόρεσε να αλλάξει"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "Οι δύο πεδία κωδικού δεν ταιριάζουν"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Ο κωδικός άλλαξε"
@@ -5210,11 +5238,11 @@ msgstr "Το αίτημα έληξε χρονικά"
msgid "Exporting Data"
msgstr "Εξαγωγή δεδομένων"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Εξαγωγή δεδομένων"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Εξαγωγή"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Διαγραφή των επιλεγμένων ειδών αποθέματος"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Ενέργειες Αποθέματος"
@@ -5383,12 +5411,12 @@ msgstr "Δεν έχετε λογαριασμό;"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Έλεγχος Ταυτότητας Πολλαπλών Παραγόντων"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "Κωδικός TOTP"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Θέση"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Τύπος"
@@ -5933,220 +5961,220 @@ msgstr "Επεξεργασία Προφίλ"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Εισαγάγετε τον κωδικό σας"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Σφάλμα κατά την καταχώριση του TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "Καταχώριση TOTP Token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Κωδικοί Ανάκτησης"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Κωδικός μίας χρήσης βασισμένος στον χρόνο"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Προ-δημιουργημένοι κωδικοί ανάκτησης μίας χρήσης"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr "Το Web Authentication (WebAuthn) είναι ένα πρότυπο ιστού για ασφαλή ταυτοποίηση"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Τελευταία χρήση στις"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Δημιουργήθηκε στις"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Μη Διαμορφωμένο"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "Δεν έχουν ρυθμιστεί multi-factor tokens για αυτόν τον λογαριασμό"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr "Κωδικός Μίας Χρήσης"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Εισαγάγετε τον κωδικό TOTP για να επιβεβαιώσετε ότι καταχωρήθηκε σωστά"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Διευθύνσεις Email"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Διευθύνσεις Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Single Sign On"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Μη ενεργοποιημένο"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "Το Single Sign On δεν είναι ενεργοποιημένο για αυτόν τον διακομιστή"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Μη ενεργοποιημένο"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Το Single Sign On δεν είναι ενεργοποιημένο για αυτόν τον διακομιστή"
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Κλειδιά Πρόσβασης"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Πληροφορίες Συνεδρίας"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Πληροφορίες Συνεδρίας"
msgid "Timestamp"
msgstr "Χρονική Σήμανση"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Μέθοδος"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Σφάλμα κατά την ενημέρωση του email"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Δεν υπάρχουν καταχωρημένες διευθύνσεις email."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Οι παρακάτω διευθύνσεις email συνδέονται με τον λογαριασμό σας:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Κύρια"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Επαληθευμένο"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Μη Επαληθευμένο"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Ορισμός ως Κύριο"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Επαναποστολή Επαλήθευσης"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Προσθήκη Διεύθυνσης Email"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-Mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Διεύθυνση E-Mail"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Σφάλμα κατά την προσθήκη email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Προσθήκη Διεύθυνσης Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-Mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Διεύθυνση E-Mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Σφάλμα κατά την προσθήκη email"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Προσθήκη Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Σφάλμα κατά την προσθήκη email"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Προσθήκη Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "Δεν υπάρχουν συνδεδεμένοι πάροχοι σε αυτόν τον λογαριασμό."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "Μπορείτε να συνδεθείτε στον λογαριασμό σας χρησιμοποιώντας οποιονδήποτε από τους παρακάτω παρόχους"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Αφαίρεση σύνδεσης παρόχου"
@@ -6921,7 +6949,7 @@ msgstr "Προσαρμοσμένη κατάσταση"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Θυγατρικές Εντολές Κατασκευής"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Εμφάνιση εξωτερικών εντολών κατασκευή
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Προβολή Πίνακα"
@@ -7245,6 +7274,7 @@ msgstr "Προβολή Ημερολογίου"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Εξωτερικός Σύνδεσμος"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Στοιχεία Προϊόντος"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Προσθήκη Προϊόντος Προμηθευτή"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Χωρίς Απόθεμα"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Βασικός χρήστης"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Υποκατηγορίες"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Μετακίνηση Προϊόντων στη γονική κατηγορία"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Διαγραφή Προϊόντων"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Πωλήσιμο Προϊόν"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Δημιουργήθηκε Από"
msgid "Default Supplier"
msgstr "Προεπιλεγμένος Προμηθευτής"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Προεπιλεγμένη Λήξη"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "ημέρες"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Εύρος Τιμής"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Τελευταίος Σειριακός Αριθμός"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Επιλογή Αναθεώρησης Προϊόντος"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Παραλλαγές"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Δεσμεύσεις"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Κατάλογος Υλικών (BOM)"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Χρησιμοποιείται Σε"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Τιμολόγηση Προϊόντος"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Πρότυπα Δοκιμών"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Σχετικά Προϊόντα"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Το Προϊόν είναι Κλειδωμένο"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Οι παράμετροι προϊόντος δεν μπορούν να επεξεργαστούν επειδή το προϊόν είναι κλειδωμένο"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Οι παράμετροι προϊόντος δεν μπορούν να επεξεργαστούν επειδή το προϊόν είναι κλειδωμένο"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Απαιτείται"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Προσθήκη Προϊόντος"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Διαγραφή Προϊόντος"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Η διαγραφή αυτού του Προϊόντος δεν μπορεί να αναιρεθεί"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Παραγγελία"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Παραγγελία Αποθέματος"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Αναζήτηση με σειριακό αριθμό"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Ενέργειες Προϊόντος"
@@ -8008,8 +8038,8 @@ msgstr "Μέγιστη Αξία"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Μέγιστη Αξία"
msgid "Total Price"
msgstr "Συνολική Τιμή"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Συστατικό"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Ελάχιστη Τιμή"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Μέγιστη Τιμή"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Μέγιστη Τιμή"
msgid "Unit Price"
msgstr "Τιμή Μονάδας"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Γράφημα Πίτας"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Ραβδόγραμμα"
@@ -8543,94 +8573,94 @@ msgstr "Αναίρεση Ελέγχου"
msgid "Mark shipment as unchecked"
msgstr "Σήμανση αποστολής ως μη ελεγμένη"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Μητρική Τοποθεσία"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Υποτοποθεσίες"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Τύπος Τοποθεσίας"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Κορυφαία τοποθεσία αποθέματος"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Λεπτομέρειες Τοποθεσίας"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Προεπιλεγμένα Προϊόντα"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Επεξεργασία Τοποθεσίας Αποθέματος"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Μετακίνηση ειδών στη μητρική τοποθεσία"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Διαγραφή Τοποθεσίας Αποθέματος"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Ενέργεια για Είδη"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Ενέργεια για τα είδη αποθέματος σε αυτή την τοποθεσία"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Επεξεργασία Τοποθεσίας Αποθέματος"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Μετακίνηση ειδών στη μητρική τοποθεσία"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Διαγραφή Τοποθεσίας Αποθέματος"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Ενέργεια για Είδη"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Ενέργεια για τα είδη αποθέματος σε αυτή την τοποθεσία"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr "Ενέργεια Τοποθεσιών"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Ενέργεια για τις θυγατρικές τοποθεσίες σε αυτή την τοποθεσία"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Σάρωση Είδους Αποθέματος"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Το είδος αποθέματος σαρώθηκε στην τοποθεσία"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Σφάλμα κατά τη σάρωση είδους αποθέματος"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Σάρωση Τοποθεσίας Αποθέματος"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Η τοποθεσία αποθέματος σαρώθηκε επιτυχώς"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Σφάλμα κατά τη σάρωση τοποθεσίας αποθέματος"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Ενέργειες Τοποθεσίας"
@@ -8917,6 +8947,7 @@ msgstr "Εμφάνιση ειδών με σειριακό αριθμό"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Σειριακός"
@@ -9139,12 +9170,12 @@ msgstr "Προσθήκη Φίλτρου"
msgid "Clear Filters"
msgstr "Καθαρισμός Φίλτρων"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Δεν βρέθηκαν εγγραφές"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Σφάλμα φόρτωσης επιλογών πίνακα"
@@ -9156,7 +9187,7 @@ msgstr "Σφάλμα φόρτωσης επιλογών πίνακα"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Ο διακομιστής επέστρεψε λανθασμένο τύπο δεδομένων"
@@ -9176,7 +9207,7 @@ msgstr "Ο διακομιστής επέστρεψε λανθασμένο τύπ
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Σφάλμα φόρτωσης δεδομένων πίνακα"
@@ -9190,11 +9221,11 @@ msgstr "Σφάλμα φόρτωσης δεδομένων πίνακα"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Προβολή λεπτομερειών"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr "Προβολή {model}"
@@ -9788,7 +9819,7 @@ msgstr "Εμφάνιση παραγγελιών με ημερομηνία ένα
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Κατανομή αποθέματος εξόδου κατασκευής"
@@ -10049,7 +10080,7 @@ msgstr "Προβολή Προϊόντος"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Προσθήκη γραμμής"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Επεξεργασία γραμμής"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Απαιτούμενο απόθεμα"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Προβολή εντολής παραγωγής"
@@ -11196,7 +11227,7 @@ msgstr "Εμφάνιση προϊόντων για ενεργούς κατασκ
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Εισαγωγή γραμμών παραγγελίας"
@@ -11222,11 +11253,11 @@ msgstr "Εμφάνιση γραμμών που έχουν παραληφθεί"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Παραλαβή γραμμής"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Παραλαβή Προϊόντων"
diff --git a/src/frontend/src/locales/en/messages.po b/src/frontend/src/locales/en/messages.po
index 8d593ccbeb..e7eb6d8951 100644
--- a/src/frontend/src/locales/en/messages.po
+++ b/src/frontend/src/locales/en/messages.po
@@ -41,9 +41,9 @@ msgstr "Delete"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -57,8 +57,8 @@ msgstr "Cancel"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Actions"
@@ -68,7 +68,7 @@ msgstr "Actions"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Search"
@@ -92,12 +92,12 @@ msgstr "No"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -108,12 +108,13 @@ msgstr "No"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -129,7 +130,7 @@ msgstr "Part"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Parts"
@@ -147,11 +148,11 @@ msgid "Parameter"
msgstr "Parameter"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parameters"
@@ -213,14 +214,14 @@ msgstr "Part Category"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Part Categories"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -234,20 +235,20 @@ msgstr "Stock Item"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Stock Items"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Stock Location"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Stock Locations"
@@ -262,7 +263,7 @@ msgstr "Stock Location Types"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Stock History"
@@ -335,11 +336,11 @@ msgstr "Purchase Order"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Purchase Orders"
@@ -368,10 +369,10 @@ msgstr "Sales Order"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Sales Orders"
@@ -393,10 +394,10 @@ msgstr "Return Order"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Return Orders"
@@ -541,23 +542,23 @@ msgstr "Selection Lists"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -579,10 +580,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Build Orders"
@@ -592,11 +593,11 @@ msgstr "Build Orders"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Error rendering component"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "An error occurred while rendering this component. Refer to the console for more information."
@@ -632,7 +633,7 @@ msgstr "Barcode"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Scan"
@@ -793,12 +794,12 @@ msgstr "Printing Reports"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Print Label"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Print"
@@ -814,19 +815,19 @@ msgstr "Print"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Print Report"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Printing Actions"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Print Labels"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Print Reports"
@@ -855,8 +856,8 @@ msgstr "You will be redirected to the provider for further actions."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Open Barcode Scanner"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -932,7 +933,7 @@ msgstr "Accept Layout"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1232,11 +1233,11 @@ msgstr "Remove the associated image from this item?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1275,8 +1276,8 @@ msgstr "Clear"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Submit"
@@ -1574,21 +1575,21 @@ msgstr "Logged in successfully"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Login failed"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Check your input and try again."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Mail delivery successful"
@@ -1623,7 +1624,7 @@ msgstr "Your username"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Password"
@@ -1727,7 +1728,7 @@ msgstr "Host"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1813,6 +1814,7 @@ msgstr "API Version"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1887,7 +1889,7 @@ msgstr "{0} icons"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Loading"
@@ -1974,10 +1976,10 @@ msgid "Processing Data"
msgstr "Processing Data"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "An error occurred"
@@ -1997,31 +1999,31 @@ msgstr "Select column, or leave blank to ignore this field."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignore this field"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mapping data columns to database fields"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Accept Column Mapping"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Database Field"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Field Description"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Imported Column"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Default Value"
@@ -2034,8 +2036,12 @@ msgid "Map Columns"
msgstr "Map Columns"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Import Data"
+msgid "Import Rows"
+msgstr "Import Rows"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2066,7 +2072,7 @@ msgstr "Data has been imported successfully"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Close"
@@ -2203,7 +2209,7 @@ msgstr "Updating group roles"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2218,7 +2224,7 @@ msgid "Role"
msgstr "Role"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "View"
@@ -2250,10 +2256,10 @@ msgstr "No items"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2315,7 +2321,7 @@ msgstr "Links"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentation"
@@ -2542,7 +2548,7 @@ msgstr "Settings"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2560,7 +2566,7 @@ msgstr "User Settings"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2573,14 +2579,14 @@ msgstr "System Settings"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Admin Center"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2613,9 +2619,9 @@ msgstr "Logout"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2700,7 +2706,7 @@ msgstr "Remove search group"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2814,7 +2820,7 @@ msgstr "Plugin Information"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2974,7 +2980,7 @@ msgstr "Shipment"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inactive"
@@ -2996,7 +3002,7 @@ msgstr "No stock"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3006,7 +3012,7 @@ msgstr "On Order"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3031,7 +3037,7 @@ msgstr "Category"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3039,9 +3045,9 @@ msgstr "Category"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3055,17 +3061,16 @@ msgstr "Location"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Serial Number"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3073,7 +3078,7 @@ msgstr "Serial Number"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3090,18 +3095,18 @@ msgid "Quantity"
msgstr "Quantity"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Batch"
@@ -3188,11 +3193,19 @@ msgstr "Add Custom State"
msgid "Create a new custom state for your workflow"
msgstr "Create a new custom state for your workflow"
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr "Do you want to proceed to change this setting?"
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr "This setting requires confirmation"
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Edit Setting"
@@ -3201,32 +3214,32 @@ msgstr "Edit Setting"
msgid "Setting {key} updated successfully"
msgstr "Setting {key} updated successfully"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Setting updated"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Setting {0} updated successfully"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Error editing setting"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Error loading settings"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "No Settings"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "There are no configurable settings available"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "No settings specified"
@@ -3677,7 +3690,7 @@ msgid "Next"
msgstr "Next"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Edit Part"
@@ -3765,13 +3778,13 @@ msgstr "Sales Requirements"
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4033,77 +4046,81 @@ msgstr "Order Parts"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Go to the InvenTree dashboard"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Visit the documentation to learn more about InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "About the InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Server Information"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "About this InvenTree instance"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "License Information"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licenses for dependencies of the service"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Open Navigation"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Open the main navigation menu"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Scan a barcode or QR code"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr "Go to your user settings"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr "Go to Purchase Orders"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr "Go to Sales Orders"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr "Go to Return Orders"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr "Go to Build Orders"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr "Go to System Settings"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Go to the Admin Center"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "Manage InvenTree plugins"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4369,22 +4386,22 @@ msgstr "Substitute added"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Build Output"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr "Quantity to Complete"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4411,11 +4428,11 @@ msgstr "Quantity to Complete"
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Complete Build Outputs"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Build outputs have been completed"
@@ -4423,24 +4440,24 @@ msgstr "Build outputs have been completed"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr "Quantity to Scrap"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Scrap Build Outputs"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Selected build outputs will be completed, but marked as scrapped"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Allocated stock items will be consumed"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Build outputs have been scrapped"
@@ -4448,24 +4465,24 @@ msgstr "Build outputs have been scrapped"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Cancel Build Outputs"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Selected build outputs will be removed"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Allocated stock items will be returned to stock"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Build outputs have been cancelled"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4487,30 +4504,30 @@ msgstr "Build outputs have been cancelled"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Allocated"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Source Location"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Select the source location for the stock allocation"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4520,13 +4537,18 @@ msgstr "Select the source location for the stock allocation"
msgid "Allocate Stock"
msgstr "Allocate Stock"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Stock items allocated"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4534,23 +4556,18 @@ msgstr "Stock items allocated"
msgid "Consume Stock"
msgstr "Consume Stock"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr "Stock items scheduled to be consumed"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Fully consumed"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4567,8 +4584,12 @@ msgstr "Select project code for this line item"
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4576,23 +4597,19 @@ msgstr "Select project code for this line item"
msgid "Subscribed"
msgstr "Subscribed"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Subscribe to notifications for this part"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Parent part category"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Subscribe to notifications for this category"
@@ -4685,8 +4702,8 @@ msgstr "Store with already received stock"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4849,145 +4866,145 @@ msgstr "Return"
msgid "Count"
msgstr "Count"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Add Stock"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Stock added"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Increase the quantity of the selected stock items by a given amount."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Remove Stock"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Stock removed"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Decrease the quantity of the selected stock items by a given amount."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Transfer Stock"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Stock transferred"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Transfer selected items to the specified location."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Return Stock"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Stock returned"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Return selected items into stock, to the specified location."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Count Stock"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Stock counted"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Count the selected stock items, and adjust the quantity accordingly."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Change Stock Status"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Stock status changed"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Change the status of the selected stock items."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Merge Stock"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Stock merged"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Merge Stock Items"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "Merge operation cannot be reversed"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Tracking information may be lost when merging items"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "Supplier information may be lost when merging items"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Assign Stock to Customer"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Stock assigned to customer"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Delete Stock Items"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Stock deleted"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "This operation will permanently delete the selected stock items."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Parent stock location"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Find Serial Number"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "No matching items"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Multiple matching items"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Invalid response from server"
@@ -5057,99 +5074,110 @@ msgstr "Internal server error"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Already logged in"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Logged Out"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr "There was a conflicting session for this browser, which has been logged out."
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "No response from server."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "MFA Login successful"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "MFA details were automatically provided in the browser"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Logged Out"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Successfully logged out"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Language changed"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Your active language has been changed to the one set in your profile"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Theme changed"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Your active theme has been changed to the one set in your profile"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Reset failed"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Already logged in"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "There is a conflicting session on the server for this browser. Please logout of that first."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Logged In"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Successfully logged in"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Failed to set up MFA"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr "MFA Setup successful"
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr "MFA via TOTP has been set up successfully; you will need to login again."
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Password set"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "The password was set successfully. You can now login with your new password"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Password could not be changed"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "The two password fields didn’t match"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Password Changed"
@@ -5205,11 +5233,11 @@ msgstr "The request timed out"
msgid "Exporting Data"
msgstr "Exporting Data"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Export Data"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Export"
@@ -5295,7 +5323,7 @@ msgid "Delete selected stock items"
msgstr "Delete selected stock items"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Stock Actions"
@@ -5378,12 +5406,12 @@ msgstr "Don't have an account?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Multi-Factor Authentication"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP Code"
@@ -5881,7 +5909,7 @@ msgid "Position"
msgstr "Position"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Type"
@@ -5928,220 +5956,220 @@ msgstr "Edit Profile"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr "Reauthentication Succeeded"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr "You have been reauthenticated successfully."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr "Error during reauthentication"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr "Reauthentication Failed"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr "Failed to reauthenticate"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr "Reauthenticate"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr "Reauthentiction is required to continue."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Enter your password"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr "Enter one of your TOTP codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr "WebAuthn Credential Removed"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr "WebAuthn credential removed successfully."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr "Error removing WebAuthn credential"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr "Remove WebAuthn Credential"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr "Confirm Removal"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr "Confirm removal of webauth credential"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr "TOTP Removed"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr "TOTP token removed successfully."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr "Error removing TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr "Remove TOTP Token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr "Confirm removal of TOTP code"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr "TOTP Already Registered"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr "A TOTP token is already registered for this account."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr "Error Fetching TOTP Registration"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr "An unexpected error occurred while fetching TOTP registration data."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr "TOTP Registered"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr "TOTP token registered successfully."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Error registering TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "Register TOTP Token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr "Error fetching recovery codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Recovery Codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr "The following one time recovery codes are available for use"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr "Copy recovery codes to clipboard"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr "No Unused Codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr "There are no available recovery codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr "WebAuthn Registered"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr "WebAuthn credential registered successfully"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr "Error registering WebAuthn credential"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr "WebAuthn Registration Failed"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr "Failed to register WebAuthn credential"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr "Error fetching WebAuthn registration"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Time-based One-Time Password"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "One-Time pre-generated recovery codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr "Web Authentication (WebAuthn) is a web standard for secure authentication"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Last used at"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Created at"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Not Configured"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "No multi-factor tokens configured for this account"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr "Register Authentication Method"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr "No MFA Methods Available"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr "There are no MFA methods available for configuration"
@@ -6157,47 +6185,47 @@ msgstr "One-Time Password"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Enter the TOTP code to ensure it registered correctly"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Email Addresses"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Email Addresses"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Single Sign On"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Not enabled"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "Single Sign On is not enabled for this server "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Not enabled"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Single Sign On is not enabled for this server "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Access Tokens"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Session Information"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6205,61 +6233,57 @@ msgstr "Session Information"
msgid "Timestamp"
msgstr "Timestamp"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Method"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Error while updating email"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Currently no email addresses are registered."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "The following email addresses are associated with your account:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primary"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verified"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Unverified"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Make Primary"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Re-send Verification"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Add Email Address"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-Mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-Mail address"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Add Email Address"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-Mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-Mail address"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6269,23 +6293,27 @@ msgstr "Error while adding email"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Error while adding email"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Add Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "There are no providers connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "You can sign in to your account using any of the following providers"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Remove Provider Link"
@@ -6916,7 +6944,7 @@ msgstr "Custom Status"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7053,7 +7081,7 @@ msgid "Child Build Orders"
msgstr "Child Build Orders"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7220,6 +7248,7 @@ msgstr "Show external build orders"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Table View"
@@ -7240,6 +7269,7 @@ msgstr "Calendar View"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr "Parametric View"
@@ -7344,7 +7374,7 @@ msgstr "External Link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Part Details"
@@ -7443,7 +7473,7 @@ msgid "Add Supplier Part"
msgstr "Add Supplier Part"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "No Stock"
@@ -7491,7 +7521,7 @@ msgid "Basic user"
msgstr "Basic user"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7507,7 +7537,7 @@ msgid "Subcategories"
msgstr "Subcategories"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7536,7 +7566,7 @@ msgid "Move items to parent category"
msgstr "Move items to parent category"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Delete items"
@@ -7749,7 +7779,7 @@ msgid "Saleable Part"
msgstr "Saleable Part"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7773,117 +7803,117 @@ msgstr "Created By"
msgid "Default Supplier"
msgstr "Default Supplier"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Default Expiry"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "days"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Price Range"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Latest Serial Number"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Select Part Revision"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Variants"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Allocations"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Bill of Materials"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Used In"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Part Pricing"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Test Templates"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Related Parts"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Part is Locked"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Part parameters cannot be edited, as the part is locked"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Part parameters cannot be edited, as the part is locked"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Required"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr "Deficit"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Add Part"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Delete Part"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Deleting this part cannot be reversed"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Order"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Order Stock"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Search by serial number"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Part Actions"
@@ -8003,8 +8033,8 @@ msgstr "Maximum Value"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8016,20 +8046,20 @@ msgstr "Maximum Value"
msgid "Total Price"
msgstr "Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Component"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimum Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8043,7 +8073,7 @@ msgstr "Maximum Price"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8057,11 +8087,11 @@ msgstr "Maximum Price"
msgid "Unit Price"
msgstr "Unit Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Pie Chart"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Bar Chart"
@@ -8538,94 +8568,94 @@ msgstr "Uncheck"
msgid "Mark shipment as unchecked"
msgstr "Mark shipment as unchecked"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Parent Location"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sublocations"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Location Type"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Top level stock location"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Location Details"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Default Parts"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Edit Stock Location"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Move items to parent location"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Delete Stock Location"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Items Action"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Action for stock items in this location"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Edit Stock Location"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Move items to parent location"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Delete Stock Location"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Items Action"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Action for stock items in this location"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr "Locations Action"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Action for child locations in this location"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Scan Stock Item"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Scanned stock item into location"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Error scanning stock item"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Scan Stock Location"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Scanned stock location into location"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Error scanning stock location"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Location Actions"
@@ -8912,6 +8942,7 @@ msgstr "Show items which have a serial number"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Serial"
@@ -9134,12 +9165,12 @@ msgstr "Add Filter"
msgid "Clear Filters"
msgstr "Clear Filters"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "No records found"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Error loading table options"
@@ -9151,7 +9182,7 @@ msgstr "Error loading table options"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Server returned incorrect data type"
@@ -9171,7 +9202,7 @@ msgstr "Server returned incorrect data type"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Error loading table data"
@@ -9185,11 +9216,11 @@ msgstr "Error loading table data"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "View details"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr "View {model}"
@@ -9783,7 +9814,7 @@ msgstr "Show orders with a start date"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Build Output Stock Allocation"
@@ -10044,7 +10075,7 @@ msgstr "View Item"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10053,14 +10084,14 @@ msgid "Add Line Item"
msgstr "Add Line Item"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Edit Line Item"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10462,7 +10493,7 @@ msgid "Required Stock"
msgstr "Required Stock"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "View Build Order"
@@ -11191,7 +11222,7 @@ msgstr "Show manufacturer parts for active manufacturers."
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Import Line Items"
@@ -11217,11 +11248,11 @@ msgstr "Show line items which have been received"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Receive line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Receive items"
diff --git a/src/frontend/src/locales/es/messages.po b/src/frontend/src/locales/es/messages.po
index 02913f40d2..552d64a26f 100644
--- a/src/frontend/src/locales/es/messages.po
+++ b/src/frontend/src/locales/es/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: es\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Eliminar"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Cancelar"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Acciones"
@@ -73,7 +73,7 @@ msgstr "Acciones"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Buscar"
@@ -97,12 +97,12 @@ msgstr "No"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "No"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Pieza"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Piezas"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parámetros"
@@ -218,14 +219,14 @@ msgstr "Categoría de Pieza"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Categorías de Pieza"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Artículo de stock"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Artículos de Stock"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Ubicación de existencias"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Ubicaciones de existencias"
@@ -267,7 +268,7 @@ msgstr "Tipos de ubicaciones de existencias"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Histórico de existencias"
@@ -340,11 +341,11 @@ msgstr "Pedido de compra"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Pedidos de compra"
@@ -373,10 +374,10 @@ msgstr "Orden de venta"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Órdenes de venta"
@@ -398,10 +399,10 @@ msgstr "Orden de devolución"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Órdenes de devolución"
@@ -546,23 +547,23 @@ msgstr "Listas de Selección"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Órdenes de construcción"
@@ -597,11 +598,11 @@ msgstr "Órdenes de construcción"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Error al procesar el componente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Ocurrió un error mientras se renderizaba este componente. Consulte la consola para más información."
@@ -637,7 +638,7 @@ msgstr "Código de barras"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Escanear"
@@ -798,12 +799,12 @@ msgstr "Imprimir Reportes"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Imprimir etiqueta"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Imprimir"
@@ -819,19 +820,19 @@ msgstr "Imprimir"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Imprimir un informe"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Acciones de impresión"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Imprimir etiquetas"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Imprimir reportes"
@@ -860,8 +861,8 @@ msgstr "Usted será redirigido al proveedor para más acciones."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Abrir Escáner de código de barras"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Aceptar diseño"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "¿Eliminar la imagen asociada de este elemento?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Borrar"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Enviar"
@@ -1579,21 +1580,21 @@ msgstr "Se ha iniciado sesión con éxito"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Error al iniciar sesión"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Verifique su entrada e intente nuevamente."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Envío de correo exitoso"
@@ -1628,7 +1629,7 @@ msgstr "Tu nombre de usuario"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Contraseña"
@@ -1732,7 +1733,7 @@ msgstr "Servidor"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Versión API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "Iconos {0}"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Cargando"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Procesando datos"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Se ha producido un error"
@@ -2002,31 +2004,31 @@ msgstr "Seleccione la columna o deje en blanco para ignorar este campo."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignorar este campo"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mapear datos de columnas a campos de la base de datos"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Aceptar mapeo de columnas"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Cambo de base de datos"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Descripción del campo"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Columna importada"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Valor por defecto"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mapear columnas"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importar datos"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Los datos se han importado satisfactoriamente"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Cerrar"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Rol"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Vista"
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Enlaces"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentación"
@@ -2547,7 +2553,7 @@ msgstr "Ajustes"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Ajustes del usuario"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Ajustes del sistema"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Administración"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Cerrar sesión"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Información del complemento"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Envío"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inactivo"
@@ -3001,7 +3007,7 @@ msgstr "Sin Stock"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "En pedido"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Categoría"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Categoría"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Ubicación"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Número de serie"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Número de serie"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Cantidad"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Lote"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Editar Ajustes"
@@ -3206,32 +3219,32 @@ msgstr "Editar Ajustes"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Configuración actualizada"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "La configuración {0} se ha actualizado correctamente"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Error al editar la configuración"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "No se especificaron ajustes"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Editar Pieza"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Ordenar Partes"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Ir al panel de InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Visite la documentación para obtener más información sobre InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Acerca de InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Información del Servidor"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Acerca de esta instancia de InvenTree"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Información de licencia"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licencias para dependencias del servicio"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Abrir navegación"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Abrir el menú de navegación principal"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Ir al Centro de Administración"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Estado"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Salidas de Trabajo Completadas"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Salidas de Trabajo se han Completado"
@@ -4428,24 +4445,24 @@ msgstr "Salidas de Trabajo se han Completado"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Eliminar Salidas de Construcción"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Salidas de Construcción eliminadas"
@@ -4453,24 +4470,24 @@ msgstr "Salidas de Construcción eliminadas"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Cancelar Salidas de Construcción"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Salidas de Construcción han sido canceladas"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Salidas de Construcción han sido canceladas"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Asignado"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Ubicación origen"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Seleccione la ubicación de origen para la asignación de stock"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Seleccione la ubicación de origen para la asignación de stock"
msgid "Allocate Stock"
msgstr "Asignar Stock"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Artículos de stock seleccionados"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Artículos de stock seleccionados"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Suscrito"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Suscríbete a las notificaciones de esta pieza"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Categoría superior de pieza"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Suscribirse a las notificaciones de esta categoría"
@@ -4690,8 +4707,8 @@ msgstr "Guardar con cantidad ya recibida"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Devolver"
msgid "Count"
msgstr "Contar"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Agregar existencias"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Existencias añadidas"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Eliminar existencias"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Existencias eliminadas"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Transferir existencias"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Existencias transferidas"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Contar existencias"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Existencias contadas"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Cambiar estado de existencias"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Estado de existencias cambiado"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Juntar existencias"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Existencias fusionadas"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Asignar existencias a cliente"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Existencias asignadas a cliente"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Eliminar existencias"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Existencias eliminadas"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Ubicación del stock padre"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr "Error interno del servidor"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Ya iniciaste sesión"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Desconectado"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Desconectado"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Se cerró sesión correctamente"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Restablecimiento fallido"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Ya iniciaste sesión"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Conectado"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Sesión iniciada correctamente"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Contraseña establecida"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "La contraseña fue establecida con éxito. Ahora puede iniciar sesión con su nueva contraseña"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr "La solicitud ha expirado"
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Exportar Datos"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Exportar"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Acciones de inventario"
@@ -5383,12 +5411,12 @@ msgstr "¿No tiene una cuenta?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr "Editar Perfil"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "No Configurado"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Direcciones de Correo Electrónico"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Direcciones de Correo Electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "No habilitado"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "No habilitado"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Tokens de Acceso"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "Fecha y hora"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Las siguientes direcciones de correo electrónico están asociadas con tu cuenta:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Principal"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verificado"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Sin verificar"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Convertir en principal"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Reenviar verificación"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Añadir dirección de correo electrónico"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "Correo electrónico"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Dirección de correo electrónico"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Añadir dirección de correo electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "Correo electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Dirección de correo electrónico"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Añadir correo electrónico"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Añadir correo electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Enlace externo"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Añadir pieza de proveedor"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Sin existencias"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Subcategorías"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Mover elementos a la categoría padre"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Eliminar elementos"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Último número de serie"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Precio de pieza"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Plantillas de Prueba"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Piezas Relacionadas"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Requerido"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Añadir pieza"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Eliminar pieza"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "La eliminación de esta pieza no se puede revertir"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Orden"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr "Precio total"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Componente"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Precio mínimo"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Precio Máximo"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Precio Máximo"
msgid "Unit Price"
msgstr "Precio Unitario"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Gráfico de tarta"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Gráfico de barras"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Ubicación padre"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sub-localizaciones"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Tipo de ubicación"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Ubicación de existencias superior"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Detalles de la ubicación"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Partes por defecto"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Mover elementos a la categoría padre"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Acción de elementos"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Acción para los artículos de stock en esta ubicación"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Mover elementos a la categoría padre"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Acción de elementos"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Acción para los artículos de stock en esta ubicación"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Añadir filtro"
msgid "Clear Filters"
msgstr "Borrar filtros"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Ningún registro encontrado"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "El servidor devolvió un tipo de datos incorrecto"
@@ -9176,7 +9207,7 @@ msgstr "El servidor devolvió un tipo de datos incorrecto"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Adjudicación de existencias de salida de construcción"
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Añadir Artículo de Línea"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Editar artículo de línea"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Stock requerido"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Ver orden de construcción"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr "Mostrar elementos de línea que han sido recibidos"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/es_MX/messages.po b/src/frontend/src/locales/es_MX/messages.po
index 5c3c553c73..5419fa4d46 100644
--- a/src/frontend/src/locales/es_MX/messages.po
+++ b/src/frontend/src/locales/es_MX/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: es_MX\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Spanish, Mexico\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Eliminar"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Cancelar"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Acciones"
@@ -73,7 +73,7 @@ msgstr "Acciones"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Buscar"
@@ -97,12 +97,12 @@ msgstr "No"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "No"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Pieza"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Piezas"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parámetros"
@@ -218,14 +219,14 @@ msgstr "Categoría de Pieza"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Categorías de Pieza"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Artículo de stock"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Artículos de Stock"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Ubicación de almacén"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Ubicaciones de almacén"
@@ -267,7 +268,7 @@ msgstr "Tipos de ubicaciones de existencias"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Histórico de existencias"
@@ -340,11 +341,11 @@ msgstr "Pedido de compra"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Órdenes de compra"
@@ -373,10 +374,10 @@ msgstr "Orden de venta"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Órdenes de venta"
@@ -398,10 +399,10 @@ msgstr "Orden de devolución"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Ordenes de devolución"
@@ -546,23 +547,23 @@ msgstr "Listas de Selección"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Ordenes de Producción"
@@ -597,11 +598,11 @@ msgstr "Ordenes de Producción"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Error al renderizar componente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Ocurrió un error mientras se renderizaba este componente. Consulte la consola para más información."
@@ -637,7 +638,7 @@ msgstr "Código de barras"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Escanear"
@@ -798,12 +799,12 @@ msgstr "Imprimir reportes"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Imprimir etiqueta"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Imprimir"
@@ -819,19 +820,19 @@ msgstr "Imprimir"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Imprimir informe"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Acciones de impresión"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Imprimir etiquetas"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Imprimir informes"
@@ -860,8 +861,8 @@ msgstr "Usted será redirigido al proveedor para más acciones."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Abrir Escáner de código de barras"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Aceptar diseño"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "¿Eliminar imagen asociada al artículo?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Borrar"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Aceptar"
@@ -1579,21 +1580,21 @@ msgstr "Se ha iniciado sesión con éxito"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Error al iniciar sesión"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Verifique su entrada e intente nuevamente."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Envío de correo exitoso"
@@ -1628,7 +1629,7 @@ msgstr "Tu nombre de usuario"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Contraseña"
@@ -1732,7 +1733,7 @@ msgstr "Servidor"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Versión de API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "Iconos {0}"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Cargando"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Procesando datos"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Se ha producido un error"
@@ -2002,31 +2004,31 @@ msgstr "Seleccione la columna o deje en blanco para ignorar este campo."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignorar este campo"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mapear datos de columnas a campos de la base de datos"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Aceptar mapeo de columnas"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Cambo de base de datos"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Descripción del campo"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Columna importada"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Valor por defecto"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mapear columnas"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importar datos"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Los datos se han importado satisfactoriamente"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Cerrar"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Enlaces"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentación"
@@ -2547,7 +2553,7 @@ msgstr "Ajustes"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Ajustes del usuario"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Ajustes del sistema"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centro de administración"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Cerrar sesión"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Eliminar grupo de búsqueda"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Información del complemento"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Envío"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inactivo"
@@ -3001,7 +3007,7 @@ msgstr "Sin existencias"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "En pedido"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Categoría"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Categoría"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Ubicación"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Número de serie"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Número de serie"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Cantidad"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Lote"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Editar ajuste"
@@ -3206,32 +3219,32 @@ msgstr "Editar ajuste"
msgid "Setting {key} updated successfully"
msgstr "El ajuste {key} se ha actualizado correctamente"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Ajuste actualizado"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "El ajuste {0} se ha actualizado correctamente"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Error al editar el ajuste"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "No se especificaron ajustes"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Editar Pieza"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Pedir Piezas"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Ir al panel de InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Visite la documentación para obtener más información sobre InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Acerca de la organización InvenTree"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Información del Servidor"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Acerca de esta instancia de InvenTree"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Información de licencia"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licencias para dependencias del servicio"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Abrir navegación"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Abrir el menú de navegación principal"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Escanear el código de barras o código QR"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Ir al Centro de Administración"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Estado"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Salidas de construcción completadas"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Salidas de construcción se han completado"
@@ -4428,24 +4445,24 @@ msgstr "Salidas de construcción se han completado"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Eliminar salidas de construcción"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Salidas de construcción eliminadas"
@@ -4453,24 +4470,24 @@ msgstr "Salidas de construcción eliminadas"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Cancelar salidas de construcción"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Las salidas de la construcción han sido canceladas"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Las salidas de la construcción han sido canceladas"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Asignado"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Ubicación origen"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Seleccione la ubicación de origen para la asignación de stock"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Seleccione la ubicación de origen para la asignación de stock"
msgid "Allocate Stock"
msgstr "Stock Asignado"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Artículos de stock seleccionados"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Artículos de stock seleccionados"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Suscrito"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Suscríbete a las notificaciones de esta pieza"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Categoría superior de pieza"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Suscribirse a las notificaciones de esta categoría"
@@ -4690,8 +4707,8 @@ msgstr "Guardar con cantidad ya recibida"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Devolver"
msgid "Count"
msgstr "Contar"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Agregar existencias"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Existencias añadidas"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Eliminar existencias"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Existencias eliminadas"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Transferir existencias"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Existencias transferidas"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Contar existencias"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Existencias contadas"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Cambiar estado de existencias"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Estado de existencias cambiado"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Juntar existencias"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Existencias fusionadas"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Asignar existencias a cliente"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Existencias asignadas a cliente"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Eliminar existencias"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Existencias eliminadas"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Ubicación del stock padre"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr "Error interno del servidor"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Ya iniciaste sesión"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "Hay una sesión en conflicto en el servidor para este navegador. Por favor, cierra la sesión primero."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Desconectado"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Desconectado"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Se cerró sesión correctamente"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Revisa tu bandeja de entrada para un enlace de restablecimiento. Esto solo funciona si tienes una cuenta. Revisa el correo no deseado también."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Restablecimiento fallido"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Ya iniciaste sesión"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Hay una sesión en conflicto en el servidor para este navegador. Por favor, cierra la sesión primero."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Conectado"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Sesión iniciada correctamente"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Error al configurar MFA"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Contraseña establecida"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "La contraseña fue establecida con éxito. Ahora puede iniciar sesión con su nueva contraseña"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "No se ha podido cambiar la contraseña"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Contraseña Cambiada"
@@ -5210,11 +5238,11 @@ msgstr "La solicitud ha expirado"
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr "¿No tiene una cuenta?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Ingrese su contraseña"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Contraseña única temporal"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Códigos de recuperación auto-generados de un sólo uso"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "No habilitado"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "No habilitado"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "Fecha y hora"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Las siguientes direcciones de correo electrónico están asociadas con tu cuenta:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primario"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verificado"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Sin verificar"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Convertir en principal"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Reenviar verificación"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Añadir dirección de correo electrónico"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "Correo electrónico"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Dirección de correo electrónico"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Añadir dirección de correo electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "Correo electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Dirección de correo electrónico"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Añadir correo electrónico"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Añadir correo electrónico"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr "Estado Personalizado"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Órdenes de Trabajo herederas"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Enlace externo"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Detalles de la Pieza"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Añadir pieza de proveedor"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Sin existencias"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Subcategorías"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Mover artículos a la categoría padre"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Eliminar elementos"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Creado Por"
msgid "Default Supplier"
msgstr "Proveedor Predeterminado"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Rango de Precios"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Último número de serie"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Variantes"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Asignaciones"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Lista de Materiales"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Requerido"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Añadir pieza"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Eliminar pieza"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "La eliminación de esta parte no puede ser revertida"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Pedido"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr "Valor Máximo"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Valor Máximo"
msgid "Total Price"
msgstr "Precio total"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Componente"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Precio mínimo"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Precio Máximo"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Precio Máximo"
msgid "Unit Price"
msgstr "Precio Unitario"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Mover elementos a la categoría padre"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Mover elementos a la categoría padre"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Añadir filtro"
msgid "Clear Filters"
msgstr "Borrar Filtros"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Ningún registro encontrado"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "El servidor devolvió un tipo de datos incorrecto"
@@ -9176,7 +9207,7 @@ msgstr "El servidor devolvió un tipo de datos incorrecto"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Asignación de existencias de salida de construcción"
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Stock requerido"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Ver orden de construcción"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr "Mostrar partidas que han sido recibidas"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Recibir artículos"
diff --git a/src/frontend/src/locales/et/messages.po b/src/frontend/src/locales/et/messages.po
index c5cfc679b7..02bc33c0c0 100644
--- a/src/frontend/src/locales/et/messages.po
+++ b/src/frontend/src/locales/et/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: et\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Estonian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Kustuta"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Tühista"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Toimingud"
@@ -73,7 +73,7 @@ msgstr "Toimingud"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Otsing"
@@ -97,12 +97,12 @@ msgstr "Ei"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Ei"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parameetrid"
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Komponendi renderdamise tõrge"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Komponendi renderimisel tekkis viga. Lisateabe saamiseks vaadake konsooli."
@@ -637,7 +638,7 @@ msgstr "Vöötkood"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Skanneeri"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Prindi silt"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Prindi"
@@ -819,19 +820,19 @@ msgstr "Prindi"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Prindi aruanne"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Printimise toimingud"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Prindi sildid"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Prindi aruanded"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Kas soovite eemaldada seotud pildi sellest üksusest?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Puhasta"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Esita"
@@ -1579,21 +1580,21 @@ msgstr "Sisselogimine õnnestus"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Sisselogimine ebaõnnestus"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Kontrollige oma sisestust ja proovige uuesti."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "E-kirja kohaletoimetamine õnnestus"
@@ -1628,7 +1629,7 @@ msgstr "Kasutajanimi"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Parool"
@@ -1732,7 +1733,7 @@ msgstr "Võõrustaja"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API versioon"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} ikoonid"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Laadimine"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Andmete töötlemine"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Ilmnes viga"
@@ -2002,31 +2004,31 @@ msgstr "Valige veerg või jätke tühi, et see väli ignoreerida."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignoreerige see väli"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Kaardistage andmepalgid andmebaasi väljadele"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Võtke vastu veeru kaardistamine"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Andmebaasi väli"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Välja kirjeldus"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Imporditud veerg"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Vaikimisi väärtus"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Kaardista veerud"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Andmete importimine"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Andmed on edukalt importitud"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Sulge"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Lingid"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentatsioon"
@@ -2547,7 +2553,7 @@ msgstr "Seaded"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Kasutaja seaded"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Logi välja"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Mitteaktiivne"
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategooria"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategooria"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Asukoht"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Seerianumber"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Seerianumber"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Kogus"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Muuda seadeid"
@@ -3206,32 +3219,32 @@ msgstr "Muuda seadeid"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Seaded on uuendatud"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Seade {0} edukalt värskendatud"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Muuda osa"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Minge InvenTree'i armatuurlauale"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Külastage dokumentatsiooni, et rohkem teada saada InvenTree kohta"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Serveri informatsioon"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Teenuste sõltuvuste litsentsid"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Ava peamenüü"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Staatus"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Ehitustulemused on valmis"
@@ -4428,24 +4445,24 @@ msgstr "Ehitustulemused on valmis"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Ehitustulemused on tühistatud"
@@ -4453,24 +4470,24 @@ msgstr "Ehitustulemused on tühistatud"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Ehitustulemused on tühistatud"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Ehitustulemused on tühistatud"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Eraldatud"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Valige laoseisu eraldamise alguskoht"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Valige laoseisu eraldamise alguskoht"
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Selle plugina jaoks ei ole sisu esitatud"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Selle plugina jaoks ei ole sisu esitatud"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr "Pood juba saadud varudega"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr "Kogus"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Edukalt välja logitud"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Kontrollige oma postkasti lähtestamise lingi jaoks. See toimib ainult siis, kui teil on konto. Vaadake ka rämpsposti."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Parool määrati edukalt. Nüüd saate sisse logida oma uue parooliga"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr "Kas teil pole kontot?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Teie kontoga on seotud järgmised e-posti aadressid:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Peamine"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Kinnitatud"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Kinnitamata"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Määra peamiseks"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Saada kinnitus uuesti"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Lisa e-posti aadress"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-post"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-posti aadress"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Lisa e-posti aadress"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-post"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-posti aadress"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Lisa E-mail"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Lisa E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Väline link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Alamkategooriad"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr "Vaiketarnija"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Hinnavahemik"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Variandid"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Osale osade parameetreid ei saa muuta, kuna osa on lukus"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Osale osade parameetreid ei saa muuta, kuna osa on lukus"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Nõutud"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Lisa osa"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Selle osa kustutamist ei saa tagasi võtta"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr "Maksimaalne hind"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maksimaalne hind"
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Komponent"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimaalne hind"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Maksimaalne hind"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Maksimaalne hind"
msgid "Unit Price"
msgstr "Ühiku hind"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Sektorgraafik"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Tulpgraafik"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Tegevus inventariüksuste jaoks selles asukohas"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Tegevus inventariüksuste jaoks selles asukohas"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Tegevus selle asukoha alamkohtades"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr "Näita üksusi, millel on seerianumber"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Lisa filter"
msgid "Clear Filters"
msgstr "Tühjenda filtrid"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Kirjeid ei leitud"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Server tagastas ebatäpse andmeühiku"
@@ -9176,7 +9207,7 @@ msgstr "Server tagastas ebatäpse andmeühiku"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/fa/messages.po b/src/frontend/src/locales/fa/messages.po
index fc8e2db736..0c03a53467 100644
--- a/src/frontend/src/locales/fa/messages.po
+++ b/src/frontend/src/locales/fa/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: fa\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Persian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/fi/messages.po b/src/frontend/src/locales/fi/messages.po
index 4e2de11d37..9d73eba1a8 100644
--- a/src/frontend/src/locales/fi/messages.po
+++ b/src/frontend/src/locales/fi/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: fi\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Finnish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/fr/messages.po b/src/frontend/src/locales/fr/messages.po
index ee97c00cbe..745243ad18 100644
--- a/src/frontend/src/locales/fr/messages.po
+++ b/src/frontend/src/locales/fr/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: fr\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
@@ -46,9 +46,9 @@ msgstr "Supprimer"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Annuler"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Actions"
@@ -73,7 +73,7 @@ msgstr "Actions"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Rechercher"
@@ -97,12 +97,12 @@ msgstr "Non"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Non"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Pièce"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Composants"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Paramètres"
@@ -218,14 +219,14 @@ msgstr "Catégorie de composant"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Catégories de composants"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Article en stock"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Articles en stock"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Emplacement du stock"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Emplacements de stock"
@@ -267,7 +268,7 @@ msgstr "Emplacements des stocks"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Historique du stock"
@@ -340,11 +341,11 @@ msgstr "Commande d’achat"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Ordres d'achat"
@@ -373,10 +374,10 @@ msgstr "Ventes"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Ordres de vente"
@@ -398,10 +399,10 @@ msgstr "Retour de commande"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Retours"
@@ -546,23 +547,23 @@ msgstr "Listes Sélectionnées"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Administrateur"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Ordres de fabrication"
@@ -597,11 +598,11 @@ msgstr "Ordres de fabrication"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Erreur lors de l'affichage de l'application"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Une erreur s'est produite lors du rendu de ce composant. Reportez-vous à la console pour plus d'informations."
@@ -637,7 +638,7 @@ msgstr "Code-barres"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Scanner"
@@ -798,12 +799,12 @@ msgstr "Impression des Rapports"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Imprimer l'étiquette"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Imprimer"
@@ -819,19 +820,19 @@ msgstr "Imprimer"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Imprimer le rapport"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Options d'impression"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Imprimer les étiquettes"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Imprimer les rapports"
@@ -860,8 +861,8 @@ msgstr "Vous allez être redirigé vers le fournisseur pour d'autres actions."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Ouvrir le lecteur de code-barres"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Accepter la mise en page"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Supprimer l'image associée de cet élément ?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Effacer"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Envoyer"
@@ -1579,21 +1580,21 @@ msgstr "Connexion réussie"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Login invalide"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Vérifiez votre saisie et réessayez."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Envoi du mail réussi"
@@ -1628,7 +1629,7 @@ msgstr "Votre nom d'utilisateur"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Mot de passe"
@@ -1732,7 +1733,7 @@ msgstr "Serveur"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Version de l'API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "Icônes {0}"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Chargement"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Traitement des données"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Une erreur s'est produite"
@@ -2002,31 +2004,31 @@ msgstr "Sélectionnez la colonne, ou laissez vide pour ignorer ce champ."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignorer ce champ"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mappage des colonnes de données aux champs de la base de données"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Accepter le mappage des colonnes"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Champ de base de données"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Description du champ"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Colonne importée"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Valeur par Défaut"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mapper les colonnes"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importer les données"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Les données on était correctement importés"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Fermer"
@@ -2208,7 +2214,7 @@ msgstr "Mise à jour des roles du groupe"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Rôle"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Voir"
@@ -2255,10 +2261,10 @@ msgstr "Aucun élément"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Liens"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentation"
@@ -2547,7 +2553,7 @@ msgstr "Paramètres"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Paramètres de l'utilisateur"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Les paramètres du système"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centre Admin"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Se déconnecter"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Supprimer le groupe de recherche"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Informations sur le plugin"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Livraison"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inactif"
@@ -3001,7 +3007,7 @@ msgstr "Aucun stock"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "En Commande"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Catégorie"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Catégorie"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Emplacement"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Numéro de série"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Numéro de série"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Quantité"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Lot"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Éditer le paramétrage"
@@ -3206,32 +3219,32 @@ msgstr "Éditer le paramétrage"
msgid "Setting {key} updated successfully"
msgstr "Paramètre {key} mis à jour avec succès"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Paramètre mis à jour"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Paramètre {0} mis à jour avec succès"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Erreur lors de la modification des paramètres"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Impossible de charger les paramètres"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Aucun paramètre"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Aucun paramètre configurable n'est disponible"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Aucun paramètre spécifié"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Modifier la pièce"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Commander des pièces"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Accéder au tableau de bord InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Consultez la documentation pour en savoir plus sur InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "À propos d'InvenTree"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Information serveur"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "A propos de instance Inventree actuelle"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informations de licence"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licences des dépendances du service"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Ouvrir la navigation"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Ouvrir le menu principal de navigation"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Scanner un code bar ou un QR code"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Accéder au centre d'administration"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Alternative ajoutée"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Sortie de la construction"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Sorties de Fabrication terminées"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Les fabrication ont été achevé"
@@ -4428,24 +4445,24 @@ msgstr "Les fabrication ont été achevé"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Éliminer les résultats de construction"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Les sorties de fabrication sélectionnées vont être terminées mais marquées comme rebus"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Les articles en stock vont être consommés"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Les résultats de construction ont été supprimé"
@@ -4453,24 +4470,24 @@ msgstr "Les résultats de construction ont été supprimé"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Annuler les résultats de construction"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Les sorties de fabrication sélectionnées vont être supprimées"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Les articles en stock alloués vont être remis dans le stock"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Les résultats de construction ont été annulés"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Les résultats de construction ont été annulés"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Allouée"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Emplacement d'origine"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Sélectionnez l'emplacement de la source pour l'allocation du stock"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Sélectionnez l'emplacement de la source pour l'allocation du stock"
msgid "Allocate Stock"
msgstr "Stock alloué"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Éléments du stock alloués"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Éléments du stock alloués"
msgid "Consume Stock"
msgstr "Consommer le stock"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Complétement consommé"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Abonné"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Suivre les notifications de cette pièce"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Catégorie de pièce parente"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "S'abonner aux notifications pour cette catégorie"
@@ -4690,8 +4707,8 @@ msgstr "Stocker avec le stock déjà reçu"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Retour"
msgid "Count"
msgstr "Compter"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Ajouter du stock"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Stock ajouté"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Augmenter le nombre des articles en stock sélectionnés d'une quantité donnée."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Supprimer du stock"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Stock retiré"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Réduire le nombre des articles en stock sélectionnés d'une quantité donnée."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Transférer le stock"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Stock transféré"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Transférer les articles sélectionnés vers l'endroit spécifié."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Remettre en stock"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Remis en stock"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Remettre les articles sélectionnés en stock, à l'endroit spécifié."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Compter le stock"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Stock compté"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Compter les articles en stock sélectionnés et ajuster la quantité."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Changer l'état du stock"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Statut du stock changé"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Changer le status des articles en stock sélectionnés."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Fusionner le stock"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Stock fusionné"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Fusionner les articles en stock"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "L'opération de fusion ne permet pas de retour en arrière"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Les informations de suivi pourraient être perdues lors de la fusion des articles"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "Les informations du fournisseur pourraient être perdues lors de la fusion des articles"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Lier un stock à un client"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Stock lié au client"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Supprimer l'article du stock"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Stock supprimé"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Cette opération va supprimer définitivement les articles en stock sélectionnés."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Localisation Parente du stock"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Trouver le numéro de série"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Pas d'article correspondant"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Plusieurs articles correspondent"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Réponse invalide du serveur"
@@ -5062,99 +5079,110 @@ msgstr "Erreur de serveur interne"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Déjà connecté"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "Il y a un conflit de session sur ce serveur pour ce navigateur. Veuillez d'abord vous déconnecter."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Déconnexion"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "Connections réussie via MFA"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "Les informations pour la MFA ont été automatiquement fournis par le navigateur"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Déconnexion"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Déconnexion réussie !"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Langue changée"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Votre langue active a été remplacée en celle qui est définie dans votre profil"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Thème changé"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Votre thème actif a été remplacé par celui défini dans votre profil"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Vérifiez votre boîte de réception pour un lien de réinitialisation. Cela ne fonctionne que si vous avez un compte. Vérifiez également dans le spam."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Échec de la réinitialisation"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Déjà connecté"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Il y a un conflit de session sur ce serveur pour ce navigateur. Veuillez d'abord vous déconnecter."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Connecté"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Vous êtes connecté(e)"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Échec de la mise en place de l'AMF"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Mot de passe défini"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Votre mot de passe a été modifié avec succès. Vous pouvez maintenant vous connecter avec votre nouveau mot de passe"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Le mot de passe n'a pas pu être changé"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "Les deux mots de passes ne corrspondent pas"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Mot de passe changé"
@@ -5210,11 +5238,11 @@ msgstr "La requête a expiré"
msgid "Exporting Data"
msgstr "Export de données"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Exporter les données"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Exporter"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Supprimer les articles en stock sélectionnés"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Actions sur le stock"
@@ -5383,12 +5411,12 @@ msgstr "Pas encore de compte ?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Authentification à deux facteurs"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "Code TOTP"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Localisation"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Type"
@@ -5933,220 +5961,220 @@ msgstr "Modifier le profil"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Entrez votre mot de passe"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Erreur d'enregistrement du jeton TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "Enregistrer le jeton TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Codes de récupération"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "Mot de passe à usage unique temporaire"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Mot de passe à usage unique basé sur le temps"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Codes de récupération générés à l'avance en une seule fois"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Dernière utilisation à"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Créer à"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Pas configuré"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "Pas de jeton multi facteur configuré pour ce compte"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr "Mot de passe à usage unique"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Saisissez le code TOTP pour vous assurer qu'il a été enregistré correctement"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Adresses email"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Adresses email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Inscription unique"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Non activé"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "L'inscription unique n'est pas active sur ce serveur "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Non activé"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "L'inscription unique n'est pas active sur ce serveur "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Jeton d'accès"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Informations sur la session"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Informations sur la session"
msgid "Timestamp"
msgstr "Horodatage"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Méthode"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Erreurs pendant la mise à jour de l'email"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Actuellement, aucune adresse email n'est enregistrer."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Les adresses de messagerie suivantes sont associées à votre compte :"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Principale"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Vérifiée"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Non vérifiée"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Rendre Principale"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Renvoyer le message de vérification"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Ajouter une adresse email"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Adresse e-mail"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Erreur pendant l'ajout de l'email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Ajouter une adresse email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Adresse e-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Erreur pendant l'ajout de l'email"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Ajouter l’e-mail"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Erreur pendant l'ajout de l'email"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Ajouter l’e-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "Aucun fournisseur n'est lié à ce compte."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "Vous pouvez vous connecter à votre compte en utilisant l'un des fournisseurs suivants"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Retirer lien du fournisseur"
@@ -6921,7 +6949,7 @@ msgstr "Statut personnalisé"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Ordre de fabrication enfant"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Voir les ordres de fabrication externes"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Vue de la table"
@@ -7245,6 +7274,7 @@ msgstr "Vue du calendrier"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Lien externe"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Détails de la pièce"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Ajouter la pièce du fournisseur"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Aucun stock"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Utilisateur basique"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Sous-catégories"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Déplacer les articles dans la catégorie parent"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Supprimer l’élément"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Pièce vendable"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Créé par"
msgid "Default Supplier"
msgstr "Fournisseur par Défaut"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Expiration par défaut"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "jours"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Échelle des prix"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Dernier numéro de série"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Sélectionner une révision de pièce"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Variants"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Allocations"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Liste des matériaux"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Utilisé pour"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Prix des pièces"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Modèles de test"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Pièces associées"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "La pièce est bloquée"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Les paramètres de la partie ne peuvent pas être modifiés, car la partie est verrouillée"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Les paramètres de la partie ne peuvent pas être modifiés, car la partie est verrouillée"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Requis"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Ajouter Pièce"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Supprimer la pièce"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "La suppression de cette pièce est irréversible"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Commande"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Stock de commandes"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Rechercher par numéro de série"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Actions sur les pièces"
@@ -8008,8 +8038,8 @@ msgstr "Valeur maximale"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Valeur maximale"
msgid "Total Price"
msgstr "Prix total"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Composant"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Prix Minimum"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Prix Maximum"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Prix Maximum"
msgid "Unit Price"
msgstr "Prix unitaire"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Graphique en secteurs"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Graphique en barres"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Emplacement parent"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sous-emplacements"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Types d'emplacement"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Emplacement de stock de premier niveau"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Détails de l’emplacement"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Pièces par défaut"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Modifier l'emplacement du stock"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Déplacer les articles à l'emplacement des parents"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Supprimer l'emplacement du stock"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Action sur les éléments"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Action pour les articles en stock à cet emplacement"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Modifier l'emplacement du stock"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Déplacer les articles à l'emplacement des parents"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Supprimer l'emplacement du stock"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Action sur les éléments"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Action pour les articles en stock à cet emplacement"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Action pour les emplacements enfants à cet emplacement"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Scanner un article en stock"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Article en stock scanné à cet emplacement"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Impossible de scanner cet article en stock"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Scanner l'emplacement de stock"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Emplacement de stock scanné à cet emplacement"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Impossible de scanner l'emplacement de stock"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Actions de l'emplacement"
@@ -8917,6 +8947,7 @@ msgstr "Afficher les articles ayant un numéro de série"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Numéro de série"
@@ -9139,12 +9170,12 @@ msgstr "Ajouter un filtre"
msgid "Clear Filters"
msgstr "Effacer filtres"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Pas d'enregistrement trouvé"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Impossible de charger la table des options"
@@ -9156,7 +9187,7 @@ msgstr "Impossible de charger la table des options"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Le serveur à retourner un type de donnée incorrect"
@@ -9176,7 +9207,7 @@ msgstr "Le serveur à retourner un type de donnée incorrect"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Impossible de charger le tableau de données"
@@ -9190,11 +9221,11 @@ msgstr "Impossible de charger le tableau de données"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Vue des détails"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr "Afficher les commandes avec une date de début"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Allocation du stock de sortie de construction"
@@ -10049,7 +10080,7 @@ msgstr "Voir l'article"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Ajouter la ligne de l'article"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Modifier la ligne de l'article"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Stock requis"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Voir l'ordre de construction"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Importer des articles"
@@ -11222,11 +11253,11 @@ msgstr "Afficher les articles qui ont été reçus"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Recevoir l'article"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Recevoir les articles"
diff --git a/src/frontend/src/locales/he/messages.po b/src/frontend/src/locales/he/messages.po
index b758d73c36..6473be9b5e 100644
--- a/src/frontend/src/locales/he/messages.po
+++ b/src/frontend/src/locales/he/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: he\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Hebrew\n"
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n"
@@ -46,9 +46,9 @@ msgstr "מחק"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "בטל"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "חפש"
@@ -97,12 +97,12 @@ msgstr "לא"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "לא"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "פריט"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "פריטים"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr "קטגוריית פריט"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "קטגוריית פריטים"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "פריט במלאי"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "פריטים במלאי"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "מיקום מלאי"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "מיקומי מלאי"
@@ -267,7 +268,7 @@ msgstr "סוגי מיקום מלאי"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "היסטוריית מלאי"
@@ -340,11 +341,11 @@ msgstr "הזמנות רכש"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "הזמנת רכש"
@@ -373,10 +374,10 @@ msgstr "הזמנת מכירה"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "הזמנות מכירה"
@@ -398,10 +399,10 @@ msgstr "החזרת הזמנה"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "החזרת הזמנות"
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "שגיאה בעיבוד הרכיב"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "אירעה שגיאה בעת עיבוד רכיב זה. עיין במסוף למידע נוסף."
@@ -637,7 +638,7 @@ msgstr "בחר רמת תיקון שגיאות"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "הדפס תווית"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "הדפס"
@@ -819,19 +820,19 @@ msgstr "הדפס"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "דוח הדפסה"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "פעולות הדפסה"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "הדפס תווית"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "הדפס דוחות"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "האם להסיר את התמונה המשויכת מפריט זה?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "נקה"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "שלח"
@@ -1579,21 +1580,21 @@ msgstr "התחברת בהצלחה"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "הכניסה נכשלה"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "בדוק את הקלט שלך ונסה שוב."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "הדואר נשלח בהצלחה"
@@ -1628,7 +1629,7 @@ msgstr "שם המשתמש שלך"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "סיסמה"
@@ -1732,7 +1733,7 @@ msgstr "מארח"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "גרסת API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} סמלים"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "טוען"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "מעבד נתונים"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "אירעה שגיאה"
@@ -2002,31 +2004,31 @@ msgstr "בחר עמודה, או השאר ריק כדי להתעלם משדה ז
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "התעלם מהשדה הזה"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "מיפוי עמודות נתונים לשדות מסד נתונים"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "קבל מיפוי עמודות"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "שדה מסד נתונים"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "תיאור שדה"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "עמודה מיובאת"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "ערך ברירת מחדל"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "עמודות מפה"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "ייבוא נתונים"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "הנתונים יובאו בהצלחה"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "סגור"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "קישורים"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "תיעוד"
@@ -2547,7 +2553,7 @@ msgstr "הגדרות"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "הגדרות מערכת"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "מרכז ניהול"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "התנתק"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "משלוח"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "לא פעיל"
@@ -3001,7 +3007,7 @@ msgstr "אין מלאי"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "מספר סידורי"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "מספר סידורי"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "כמות"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "ערוך הגדרה"
@@ -3206,32 +3219,32 @@ msgstr "ערוך הגדרה"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "ההגדרה עודכנה"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "ההגדרה {0} עודכנה בהצלחה"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "שגיאה בעריכת ההגדרה"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "לא צוינו הגדרות"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "עבור אל לוח המחוונים של InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "בקר בתיעוד כדי ללמוד עוד על InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "אודות ארגון InvenTree"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "מידע שרת"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "מידע על רישיון"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "רישיונות לתלות בשירות"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "פתח את הניווט"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "פתח את תפריט הניווט הראשי"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "עבור אל מרכז הניהול"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr "אין לך חשבון?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/hi/messages.po b/src/frontend/src/locales/hi/messages.po
index 8d00170cf9..e0fecdd678 100644
--- a/src/frontend/src/locales/hi/messages.po
+++ b/src/frontend/src/locales/hi/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: hi\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Hindi\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "लॉगिन असफल"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "पासवर्ड"
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/hu/messages.po b/src/frontend/src/locales/hu/messages.po
index db3ca9da18..51dd59c0cf 100644
--- a/src/frontend/src/locales/hu/messages.po
+++ b/src/frontend/src/locales/hu/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: hu\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Hungarian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Törlés"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Mégsem"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Műveletek"
@@ -73,7 +73,7 @@ msgstr "Műveletek"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Keresés"
@@ -97,12 +97,12 @@ msgstr "Nem"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Nem"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Alkatrész"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Alkatrészek"
@@ -149,26 +150,26 @@ msgstr "Alkatrészek"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Paraméter"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Paraméterek"
#: lib/enums/ModelInformation.tsx:45
#: src/tables/part/PartCategoryTemplateTable.tsx:87
msgid "Parameter Template"
-msgstr ""
+msgstr "Paraméter Sablon"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Paraméter Sablonok"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "Alkatrész kategória"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Alkatrész kategóriák"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Készlet tétel"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Készlet tételek"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Készlet hely"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Készlethelyek"
@@ -267,7 +268,7 @@ msgstr "Készlethely típusok"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Készlettörténet"
@@ -340,11 +341,11 @@ msgstr "Beszerzési rendelés"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Beszerzési rendelések"
@@ -373,10 +374,10 @@ msgstr "Vevői rendelés"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Vevői rendelések"
@@ -398,10 +399,10 @@ msgstr "Visszavétel"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Visszavételek"
@@ -546,23 +547,23 @@ msgstr "Választéklisták"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Adminisztrátor"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Gyártási utasítások"
@@ -597,11 +598,11 @@ msgstr "Gyártási utasítások"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Hiba a komponens renderelése közben"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Hiba történt ennek a komponensnek a renderelése közben. Nézze a konzolt további információkért."
@@ -637,7 +638,7 @@ msgstr "Vonalkód"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Szkennelés"
@@ -798,12 +799,12 @@ msgstr "Jelentések nyomtatása"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Címke Nyomtatás"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Nyomtatás"
@@ -819,19 +820,19 @@ msgstr "Nyomtatás"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Jelentés Nyomtatása"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Nyomtatási műveletek"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Címkék Nyomtatása"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Jelentések nyomtatása"
@@ -860,8 +861,8 @@ msgstr "Átirányítjuk a szolgáltatóhoz a további lépésekre."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Vonalkód olvasó megnyitása"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Elrendezés elfogadása"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1066,7 +1067,7 @@ msgstr "Aktív értékesítési rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:110
msgid "Show the number of sales orders which are currently active"
-msgstr ""
+msgstr "Mutassa a jelenleg aktív értékesítési rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:115
msgid "Overdue Sales Orders"
@@ -1074,32 +1075,32 @@ msgstr "Késésben lévő vevői rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:117
msgid "Show the number of sales orders which are overdue"
-msgstr ""
+msgstr "Mutassa a lejárt értékesítési rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:122
msgid "Assigned Sales Orders"
-msgstr ""
+msgstr "Hozzárendelt Értékesítési Rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:124
msgid "Show the number of sales orders which are assigned to you"
-msgstr ""
+msgstr "Mutassa az Önhöz rendelt értékesítési rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:129
#: src/pages/sales/SalesIndex.tsx:87
msgid "Pending Shipments"
-msgstr ""
+msgstr "Függőben Lévő Szállítmányok"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:131
msgid "Show the number of pending sales order shipments"
-msgstr ""
+msgstr "Mutassa a függőben lévő értékesítési rendelés szállítmányok számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:136
msgid "Active Purchase Orders"
-msgstr ""
+msgstr "Aktív Beszerzési Rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:138
msgid "Show the number of purchase orders which are currently active"
-msgstr ""
+msgstr "Mutassa a jelenleg aktív beszerzési rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:143
msgid "Overdue Purchase Orders"
@@ -1107,39 +1108,39 @@ msgstr "Késésben lévő beszerzések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:145
msgid "Show the number of purchase orders which are overdue"
-msgstr ""
+msgstr "Mutassa a lejárt beszerzési rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:150
msgid "Assigned Purchase Orders"
-msgstr ""
+msgstr "Hozzárendelt Beszerzési Rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:152
msgid "Show the number of purchase orders which are assigned to you"
-msgstr ""
+msgstr "Mutassa az Önhöz rendelt beszerzési rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:157
msgid "Active Return Orders"
-msgstr ""
+msgstr "Aktív Visszáru Rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:159
msgid "Show the number of return orders which are currently active"
-msgstr ""
+msgstr "Mutassa a jelenleg aktív visszáru rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:164
msgid "Overdue Return Orders"
-msgstr ""
+msgstr "Lejárt Visszáru Rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:166
msgid "Show the number of return orders which are overdue"
-msgstr ""
+msgstr "Mutassa a lejárt visszáru rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:171
msgid "Assigned Return Orders"
-msgstr ""
+msgstr "Hozzárendelt Visszáru Rendelések"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:173
msgid "Show the number of return orders which are assigned to you"
-msgstr ""
+msgstr "Mutassa az Önhöz rendelt visszáru rendelések számát"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:193
#: src/components/dashboard/widgets/GetStartedWidget.tsx:15
@@ -1159,16 +1160,16 @@ msgstr "Friss hírek"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:202
msgid "The latest news from InvenTree"
-msgstr ""
+msgstr "A legfrissebb hírek az InvenTree-ről"
#: src/components/dashboard/widgets/ColorToggleWidget.tsx:18
#: src/components/nav/MainMenu.tsx:93
msgid "Change Color Mode"
-msgstr ""
+msgstr "Színmód Váltása"
#: src/components/dashboard/widgets/ColorToggleWidget.tsx:23
msgid "Change the color mode of the user interface"
-msgstr ""
+msgstr "A felhasználói felület színmódjának módosítása"
#: src/components/dashboard/widgets/LanguageSelectWidget.tsx:18
msgid "Change Language"
@@ -1176,7 +1177,7 @@ msgstr "Nyelv megváltoztatása"
#: src/components/dashboard/widgets/LanguageSelectWidget.tsx:23
msgid "Change the language of the user interface"
-msgstr ""
+msgstr "A felhasználói felület nyelvének módosítása"
#: src/components/dashboard/widgets/NewsWidget.tsx:60
#: src/components/nav/NotificationDrawer.tsx:94
@@ -1186,11 +1187,11 @@ msgstr "Megjelölés olvasottként"
#: src/components/dashboard/widgets/NewsWidget.tsx:115
msgid "Requires Superuser"
-msgstr ""
+msgstr "Rendszergazdai jogok szükségesek"
#: src/components/dashboard/widgets/NewsWidget.tsx:116
msgid "This widget requires superuser permissions"
-msgstr ""
+msgstr "Ez a widget főfelhasználói jogosultságokat igényel"
#: src/components/dashboard/widgets/NewsWidget.tsx:133
msgid "No News"
@@ -1198,7 +1199,7 @@ msgstr "Nincsenek új hírek"
#: src/components/dashboard/widgets/NewsWidget.tsx:134
msgid "There are no unread news items"
-msgstr ""
+msgstr "Nincsenek olvasatlan hírek"
#: src/components/details/Details.tsx:117
#~ msgid "Email:"
@@ -1237,11 +1238,11 @@ msgstr "Tételhez rendelt kép eltávolítása?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1265,7 +1266,7 @@ msgstr "Kép feltöltve"
#: src/components/details/DetailsImage.tsx:173
msgid "Image has been uploaded successfully"
-msgstr ""
+msgstr "A kép sikeresen feltöltve"
#: src/components/details/DetailsImage.tsx:180
#: src/tables/general/AttachmentTable.tsx:201
@@ -1280,8 +1281,8 @@ msgstr "Törlés"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Küldés"
@@ -1315,7 +1316,7 @@ msgstr "Kép letöltése"
#: src/components/details/DetailsImage.tsx:398
msgid "Image downloaded successfully"
-msgstr ""
+msgstr "A kép sikeresen letöltve"
#: src/components/details/PartIcons.tsx:43
#~ msgid "Part is a template part (variants can be made from this part)"
@@ -1351,7 +1352,7 @@ msgstr "Képfeltöltés sikertelen"
#: src/components/editors/NotesEditor.tsx:85
msgid "Image uploaded successfully"
-msgstr ""
+msgstr "A kép sikeresen feltöltve"
#: src/components/editors/NotesEditor.tsx:119
msgid "Notes saved successfully"
@@ -1363,7 +1364,7 @@ msgstr "Megjegyzések mentése nem sikerült"
#: src/components/editors/NotesEditor.tsx:133
msgid "Error Saving Notes"
-msgstr ""
+msgstr "Hiba a Jegyzet Mentésekor"
#: src/components/editors/NotesEditor.tsx:151
#~ msgid "Disable Editing"
@@ -1399,7 +1400,7 @@ msgstr "Kód"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:50
msgid "Error rendering preview"
-msgstr ""
+msgstr "Hiba az előnézet renderelése során"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:120
msgid "Preview not available, click \"Reload Preview\"."
@@ -1423,7 +1424,7 @@ msgstr "Hiba a sablon mentése közben"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:159
msgid "Could not load the template from the server."
-msgstr ""
+msgstr "Nem sikerült betölteni a sablont a szerverről."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:176
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:319
@@ -1452,7 +1453,7 @@ msgstr "A előnézet sikeresen frissitve."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:236
msgid "An unknown error occurred while rendering the preview."
-msgstr ""
+msgstr "Ismeretlen hiba történt az előnézet renderelése során."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263
#~ msgid "Save & Reload preview"
@@ -1579,21 +1580,21 @@ msgstr "Sikeres bejelentkezés"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Belépés sikertelen"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Ellenőrizd amit beírtál és próbáld újra."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Levél kézbesítése sikeres"
@@ -1628,7 +1629,7 @@ msgstr "Felhasználónév"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Jelszó"
@@ -1688,7 +1689,7 @@ msgstr "Beviteli hiba"
#: src/components/forms/AuthenticationForm.tsx:281
msgid "Check your input and try again. "
-msgstr ""
+msgstr "Ellenőrizze a bemenetét és próbálja újra. "
#: src/components/forms/AuthenticationForm.tsx:305
msgid "This will be used for a confirmation"
@@ -1718,7 +1719,7 @@ msgstr "A regisztráció nem aktív"
#: src/components/forms/AuthenticationForm.tsx:349
msgid "This might be related to missing mail settings or could be a deliberate decision."
-msgstr ""
+msgstr "Ez vagy szándékos vagy pedig hiányzó levelezési beállítással kapcsolatos."
#: src/components/forms/HostOptionsForm.tsx:36
#: src/components/forms/HostOptionsForm.tsx:67
@@ -1732,7 +1733,7 @@ msgstr "Kiszolgáló"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1781,7 +1782,7 @@ msgstr "Hoszt opciók szerkesztése"
#: src/components/forms/InstanceOptions.tsx:76
msgid "Save host selection"
-msgstr ""
+msgstr "Gazdagép kijelölés mentése"
#: src/components/forms/InstanceOptions.tsx:98
#~ msgid "Version: {0}"
@@ -1818,6 +1819,7 @@ msgstr "API verzió"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1852,15 +1854,15 @@ msgstr "Fut"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "Válassza ki a feltöltendő fájlt"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "Javasolt érték elfogadása"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "Dátum kiválasztása"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
@@ -1892,7 +1894,7 @@ msgstr "{0} db"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Betöltés"
@@ -1946,7 +1948,7 @@ msgstr "Sor"
#: src/components/importer/ImportDataSelector.tsx:294
msgid "Row contains errors"
-msgstr ""
+msgstr "A sor hibákat tartalmaz"
#: src/components/importer/ImportDataSelector.tsx:335
msgid "Accept"
@@ -1958,7 +1960,7 @@ msgstr "Érvényes"
#: src/components/importer/ImportDataSelector.tsx:369
msgid "Filter by row validation status"
-msgstr ""
+msgstr "Szűrés sor ellenőrzési állapot szerint"
#: src/components/importer/ImportDataSelector.tsx:374
#: src/components/wizards/WizardDrawer.tsx:113
@@ -1968,27 +1970,27 @@ msgstr "Kész"
#: src/components/importer/ImportDataSelector.tsx:375
msgid "Filter by row completion status"
-msgstr ""
+msgstr "Szűrés sor befejezési állapot szerint"
#: src/components/importer/ImportDataSelector.tsx:393
msgid "Import selected rows"
-msgstr ""
+msgstr "Kijelölt sorok importálása"
#: src/components/importer/ImportDataSelector.tsx:408
msgid "Processing Data"
msgstr "Adatok feldolgozása"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Hiba történt"
#: src/components/importer/ImporterColumnSelector.tsx:69
msgid "Select column, or leave blank to ignore this field."
-msgstr ""
+msgstr "Válasszon oszlopot vagy hagyja üresen a mező figyelmen kívül hagyásához."
#: src/components/importer/ImporterColumnSelector.tsx:91
#~ msgid "Select a column from the data file"
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Figyelmen kívül hagyja ezt a mezőt"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
-msgstr ""
+msgstr "Adatoszlopok hozzárendelése adatbázis mezőkhöz"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
-msgstr ""
+msgstr "Oszlop hozzárendelés elfogadása"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Adatbázismező"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Mező leírás"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
-msgstr ""
+msgstr "Importált Oszlop"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Alapértelmezett érték"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Oszlopok leképezése"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Adat importálása"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2048,11 +2054,11 @@ msgstr "Adatok feldolgozása"
#: src/components/importer/ImporterDrawer.tsx:47
msgid "Complete Import"
-msgstr ""
+msgstr "Import Befejezése"
#: src/components/importer/ImporterDrawer.tsx:89
msgid "Failed to fetch import session data"
-msgstr ""
+msgstr "Nem sikerült lekérni az import munkamenet adatait"
#: src/components/importer/ImporterDrawer.tsx:97
#~ msgid "Cancel import session"
@@ -2064,14 +2070,14 @@ msgstr "Importálás befejezve"
#: src/components/importer/ImporterDrawer.tsx:107
msgid "Data has been imported successfully"
-msgstr ""
+msgstr "Az adatok sikeresen importálva"
#: src/components/importer/ImporterDrawer.tsx:109
#: src/components/modals/AboutInvenTreeModal.tsx:205
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Bezárás"
@@ -2123,7 +2129,7 @@ msgstr "Vonalkód hozzárendelése"
#: src/components/items/ActionDropdown.tsx:186
msgid "Link a custom barcode to this item"
-msgstr ""
+msgstr "Egyéni vonalkód hozzárendelése ehhez a tételhez"
#: src/components/items/ActionDropdown.tsx:194
msgid "Unlink custom barcode"
@@ -2152,7 +2158,7 @@ msgstr "Elem másolása"
#: src/components/items/ColorToggle.tsx:17
msgid "Toggle color scheme"
-msgstr ""
+msgstr "Színséma váltása"
#: src/components/items/DocTooltip.tsx:92
#: src/components/items/GettingStartedCarousel.tsx:20
@@ -2204,11 +2210,11 @@ msgstr "Frissítés"
#: src/components/items/RoleTable.tsx:82
msgid "Updating group roles"
-msgstr ""
+msgstr "Csoport szerepkörök frissítése"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2216,14 +2222,14 @@ msgstr "Frissítve"
#: src/components/items/RoleTable.tsx:119
msgid "Group roles updated"
-msgstr ""
+msgstr "Csoport szerepkörök frissítve"
#: src/components/items/RoleTable.tsx:135
msgid "Role"
msgstr "Szerepkör"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Megtekintés"
@@ -2239,7 +2245,7 @@ msgstr "Hozzáadás"
#: src/components/items/RoleTable.tsx:203
msgid "Reset group roles"
-msgstr ""
+msgstr "Csoport szerepkörök visszaállítása"
#: src/components/items/RoleTable.tsx:212
msgid "Reset"
@@ -2247,7 +2253,7 @@ msgstr "Visszaállítás"
#: src/components/items/RoleTable.tsx:215
msgid "Save group roles"
-msgstr ""
+msgstr "Csoport szerepkörök mentése"
#: src/components/items/TransferList.tsx:65
msgid "No items"
@@ -2255,10 +2261,10 @@ msgstr "Nincsenek tételek"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Linkek"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentáció"
@@ -2359,7 +2365,7 @@ msgstr "Frissítés elérhető"
#: src/components/modals/LicenseModal.tsx:41
msgid "No license text available"
-msgstr ""
+msgstr "Nincs elérhető licencszöveg"
#: src/components/modals/LicenseModal.tsx:48
msgid "No Information provided - this is likely a server issue"
@@ -2479,7 +2485,7 @@ msgstr "Figyelmeztetések"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "Nincsenek észlelt problémák"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
@@ -2547,7 +2553,7 @@ msgstr "Beállítások"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Felhasználói beállítások"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Rendszerbeállítások"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Admin központ"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Kijelentkezés"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Keresési csoport eltávolítása"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Plugin információ"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Szállítmány"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inaktív"
@@ -3001,7 +3007,7 @@ msgstr "Nincs készlet"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "Rendelve"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategória"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategória"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Hely"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Sorozatszám"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Sorozatszám"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Mennyiség"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Köteg"
@@ -3125,13 +3130,13 @@ msgstr "Forrás"
#: src/components/settings/QuickAction.tsx:47
msgid "Act"
-msgstr ""
+msgstr "Művelet"
#: src/components/settings/QuickAction.tsx:73
#: src/components/settings/QuickAction.tsx:113
#: src/tables/settings/ProjectCodeTable.tsx:46
msgid "Add Project Code"
-msgstr ""
+msgstr "Projektkód Hozzáadása"
#: src/components/settings/QuickAction.tsx:78
#: src/components/settings/QuickAction.tsx:124
@@ -3143,54 +3148,58 @@ msgstr "Állapot hozzáadása"
#: src/components/settings/QuickAction.tsx:85
msgid "Open an Issue"
-msgstr ""
+msgstr "Probléma Megnyitása"
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
-msgstr ""
+msgstr "Hibajelentés vagy funkciókérés a GitHubon"
#: src/components/settings/QuickAction.tsx:88
msgid "Open Issue"
-msgstr ""
+msgstr "Probléma Megnyitása"
#: src/components/settings/QuickAction.tsx:97
msgid "Add New Group"
-msgstr ""
+msgstr "Új Csoport Hozzáadása"
#: src/components/settings/QuickAction.tsx:98
msgid "Create a new group to manage your users"
-msgstr ""
+msgstr "Új csoport létrehozása a felhasználók kezeléséhez"
#: src/components/settings/QuickAction.tsx:100
msgid "New Group"
-msgstr ""
+msgstr "Új Csoport"
#: src/components/settings/QuickAction.tsx:105
msgid "Add New User"
-msgstr ""
+msgstr "Új Felhasználó Hozzáadása"
#: src/components/settings/QuickAction.tsx:106
msgid "Create a new user to manage your groups"
-msgstr ""
+msgstr "Új felhasználó létrehozása a csoportok kezeléséhez"
#: src/components/settings/QuickAction.tsx:108
msgid "New User"
-msgstr ""
+msgstr "Új Felhasználó"
#: src/components/settings/QuickAction.tsx:114
msgid "Create a new project code to organize your items"
-msgstr ""
+msgstr "Új projektkód létrehozása a tételek rendszerezéséhez"
#: src/components/settings/QuickAction.tsx:116
msgid "Add Code"
-msgstr ""
+msgstr "Kód Hozzáadása"
#: src/components/settings/QuickAction.tsx:121
msgid "Add Custom State"
-msgstr ""
+msgstr "Egyéni Állapot Hozzáadása"
#: src/components/settings/QuickAction.tsx:122
msgid "Create a new custom state for your workflow"
+msgstr "Új egyéni állapot létrehozása a munkafolyamathoz"
+
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
msgstr ""
#: src/components/settings/SettingItem.tsx:47
@@ -3198,6 +3207,10 @@ msgstr ""
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Beállítás szerkesztése"
@@ -3206,32 +3219,32 @@ msgstr "Beállítás szerkesztése"
msgid "Setting {key} updated successfully"
msgstr "A {key} beállítás sikeresen módosítva"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Beállítás frissítve"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "A {0} beállítás sikeresen módosítva"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Beállítás szerkesztési hiba"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Hiba az beállítások betöltése során"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Nincsenek beállítások"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Nincsenek szerkeszthető beállítások"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Nincs megadva beállítás"
@@ -3593,15 +3606,15 @@ msgstr "Nincs megadva beállítás"
#: src/components/wizards/ImportPartWizard.tsx:105
msgid "Exact Match"
-msgstr ""
+msgstr "Pontos Egyezés"
#: src/components/wizards/ImportPartWizard.tsx:112
msgid "Current part"
-msgstr ""
+msgstr "Aktuális alkatrész"
#: src/components/wizards/ImportPartWizard.tsx:118
msgid "Already Imported"
-msgstr ""
+msgstr "Már Importálva"
#: src/components/wizards/ImportPartWizard.tsx:205
#: src/pages/company/CompanyDetail.tsx:137
@@ -3626,107 +3639,107 @@ msgstr "Betöltés..."
#: src/components/wizards/ImportPartWizard.tsx:223
msgid "Error fetching suppliers"
-msgstr ""
+msgstr "Hiba a beszállítók lekérésekor"
#: src/components/wizards/ImportPartWizard.tsx:224
msgid "Select supplier"
-msgstr ""
+msgstr "Beszállító kiválasztása"
#. placeholder {0}: searchResults.length
#: src/components/wizards/ImportPartWizard.tsx:246
msgid "Found {0} results"
-msgstr ""
+msgstr "{0} találat"
#: src/components/wizards/ImportPartWizard.tsx:259
msgid "Import this part"
-msgstr ""
+msgstr "Alkatrész importálása"
#: src/components/wizards/ImportPartWizard.tsx:313
msgid "Are you sure you want to import this part into the selected category now?"
-msgstr ""
+msgstr "Biztosan importálni szeretné ezt az alkatrészt a kiválasztott kategóriába?"
#: src/components/wizards/ImportPartWizard.tsx:326
msgid "Import Now"
-msgstr ""
+msgstr "Importálás Most"
#: src/components/wizards/ImportPartWizard.tsx:372
msgid "Select and edit the parameters you want to add to this part."
-msgstr ""
+msgstr "Válassza ki és szerkessze a paramétereket amiket hozzá szeretne adni ehhez az alkatrészhez."
#: src/components/wizards/ImportPartWizard.tsx:379
msgid "Default category parameters"
-msgstr ""
+msgstr "Alapértelmezett kategória paraméterek"
#: src/components/wizards/ImportPartWizard.tsx:391
msgid "Other parameters"
-msgstr ""
+msgstr "Egyéb paraméterek"
#: src/components/wizards/ImportPartWizard.tsx:446
msgid "Add a new parameter"
-msgstr ""
+msgstr "Új paraméter hozzáadása"
#: src/components/wizards/ImportPartWizard.tsx:468
msgid "Skip"
-msgstr ""
+msgstr "Kihagyás"
#: src/components/wizards/ImportPartWizard.tsx:476
msgid "Create Parameters"
-msgstr ""
+msgstr "Paraméterek Létrehozása"
#: src/components/wizards/ImportPartWizard.tsx:493
msgid "Create initial stock for the imported part."
-msgstr ""
+msgstr "Kezdő készlet létrehozása az importált alkatrészhez."
#: src/components/wizards/ImportPartWizard.tsx:511
msgid "Next"
-msgstr ""
+msgstr "Következő"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Alkatrész szerkesztése"
#: src/components/wizards/ImportPartWizard.tsx:567
msgid "Part imported successfully!"
-msgstr ""
+msgstr "Alkatrész sikeresen importálva!"
#: src/components/wizards/ImportPartWizard.tsx:576
msgid "Failed to import part: "
-msgstr ""
+msgstr "Alkatrész importálása sikertelen: "
#: src/components/wizards/ImportPartWizard.tsx:641
msgid "Are you sure, you want to import the supplier and manufacturer part into this part?"
-msgstr ""
+msgstr "Biztosan importálni szeretné a beszállítói és gyártói alkatrészt ebbe az alkatrészbe?"
#: src/components/wizards/ImportPartWizard.tsx:655
msgid "Import"
-msgstr ""
+msgstr "Importálás"
#: src/components/wizards/ImportPartWizard.tsx:692
msgid "Parameters created successfully!"
-msgstr ""
+msgstr "Paraméterek sikeresen létrehozva!"
#: src/components/wizards/ImportPartWizard.tsx:720
msgid "Failed to create parameters, please fix the errors and try again"
-msgstr ""
+msgstr "Paraméterek létrehozása sikertelen, javítsa ki a hibákat és próbálja újra"
#. placeholder {0}: supplierPart?.supplier
#: src/components/wizards/ImportPartWizard.tsx:740
msgid "Part imported successfully from supplier {0}."
-msgstr ""
+msgstr "Alkatrész sikeresen importálva a(z) {0} beszállítótól."
#: src/components/wizards/ImportPartWizard.tsx:753
msgid "Open Part"
-msgstr ""
+msgstr "Alkatrész megnyitása"
#: src/components/wizards/ImportPartWizard.tsx:760
msgid "Open Supplier Part"
-msgstr ""
+msgstr "Beszállítói alkatrész megnyitása"
#: src/components/wizards/ImportPartWizard.tsx:767
msgid "Open Manufacturer Part"
-msgstr ""
+msgstr "Gyártói alkatrész megnyitása"
#: src/components/wizards/ImportPartWizard.tsx:797
#: src/tables/part/PartTable.tsx:499
@@ -3735,48 +3748,48 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:803
msgid "Import Supplier Part"
-msgstr ""
+msgstr "Beszállítói alkatrész importálása"
#: src/components/wizards/ImportPartWizard.tsx:805
msgid "Search Supplier Part"
-msgstr ""
+msgstr "Beszállítói alkatrész keresése"
#: src/components/wizards/ImportPartWizard.tsx:807
msgid "Confirm import"
-msgstr ""
+msgstr "Importálás megerősítése"
#: src/components/wizards/ImportPartWizard.tsx:809
msgid "Done"
-msgstr ""
+msgstr "Kész"
#: src/components/wizards/OrderPartsWizard.tsx:75
msgid "Error fetching part requirements"
-msgstr ""
+msgstr "Hiba az alkatrész igények lekérdezésekor"
#: src/components/wizards/OrderPartsWizard.tsx:113
msgid "Requirements"
-msgstr ""
+msgstr "Igények"
#: src/components/wizards/OrderPartsWizard.tsx:117
msgid "Build Requirements"
-msgstr ""
+msgstr "Gyártási igények"
#: src/components/wizards/OrderPartsWizard.tsx:123
msgid "Sales Requirements"
-msgstr ""
+msgstr "Értékesítési igények"
#: src/components/wizards/OrderPartsWizard.tsx:129
#: src/forms/StockForms.tsx:894
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -3819,7 +3832,7 @@ msgstr "Beszállítói alkatrész kiválasztása"
#: src/components/wizards/OrderPartsWizard.tsx:323
msgid "Copy supplier part number"
-msgstr ""
+msgstr "Beszállítói alkatrész szám másolása"
#: src/components/wizards/OrderPartsWizard.tsx:326
msgid "New supplier part"
@@ -3868,11 +3881,11 @@ msgstr "Mennyiség megadása kötelező"
#: src/components/wizards/OrderPartsWizard.tsx:574
msgid "Invalid part selection"
-msgstr ""
+msgstr "Érvénytelen alkatrész kiválasztás"
#: src/components/wizards/OrderPartsWizard.tsx:576
msgid "Please correct the errors in the selected parts"
-msgstr ""
+msgstr "Kérjük javítsa ki a hibákat a kiválasztott alkatrészeknél"
#: src/components/wizards/OrderPartsWizard.tsx:587
#: src/tables/build/BuildLineTable.tsx:822
@@ -4038,75 +4051,79 @@ msgstr "Alkatrészek megrendelése"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
-msgstr ""
+msgstr "Ugrás az InvenTree vezérlőpulthoz"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
-msgstr ""
+msgstr "Látogassa meg a dokumentációt hogy többet tudjon meg az InvenTree-ről"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Az inventree.org-ról"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Szerver Információk"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
-msgstr ""
+msgstr "Erről az InvenTree példányról"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Licensz információk"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
-msgstr ""
+msgstr "A szolgáltatás függőségeinek licenszei"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Navigáció megnyitása"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
-msgstr ""
+msgstr "Fő navigációs menü megnyitása"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
-msgstr ""
+msgstr "Vonalkód vagy QR kód beolvasása"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
-msgstr ""
+msgstr "Ugrás a felhasználói beállításokhoz"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
-msgstr ""
+msgstr "Ugrás a beszerzési rendelésekhez"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
-msgstr ""
+msgstr "Ugrás az értékesítési rendelésekhez"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
-msgstr ""
+msgstr "Ugrás a visszáru rendelésekhez"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
-msgstr ""
+msgstr "Ugrás a gyártási rendelésekhez"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
-msgstr ""
+msgstr "Ugrás a rendszer beállításokhoz"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
+msgstr "Ugrás az Admin központhoz"
+
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
msgstr ""
#: src/defaults/dashboardItems.tsx:29
@@ -4209,7 +4226,7 @@ msgstr "GitHub repó"
#: src/defaults/links.tsx:117
msgid "InvenTree source code on GitHub"
-msgstr ""
+msgstr "InvenTree forráskód a GitHub-on"
#: src/defaults/links.tsx:117
#~ msgid "Licenses for packages used by InvenTree"
@@ -4226,11 +4243,11 @@ msgstr "Rendszerinformáció"
#: src/defaults/links.tsx:176
msgid "Licenses for dependencies of the InvenTree software"
-msgstr ""
+msgstr "Az InvenTree szoftver függőségeinek licenszei"
#: src/defaults/links.tsx:187
msgid "About the InvenTree Project"
-msgstr ""
+msgstr "Az InvenTree projektről"
#: src/defaults/menuItems.tsx:7
#~ msgid "Open sourcea"
@@ -4350,11 +4367,11 @@ msgstr ""
#: src/forms/BomForms.tsx:109
msgid "Substitute Part"
-msgstr ""
+msgstr "Helyettesítő alkatrész"
#: src/forms/BomForms.tsx:126
msgid "Edit BOM Substitutes"
-msgstr ""
+msgstr "Anyagjegyzék helyettesítők szerkesztése"
#: src/forms/BomForms.tsx:133
msgid "Add Substitute"
@@ -4362,7 +4379,7 @@ msgstr "Helyettesítő hozzáadása"
#: src/forms/BomForms.tsx:134
msgid "Substitute added"
-msgstr ""
+msgstr "Helyettesítő hozzáadva"
#: src/forms/BuildForms.tsx:112
#: src/forms/BuildForms.tsx:217
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Gyártás kimenet"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
-msgstr ""
+msgstr "Teljesítendő mennyiség"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,61 +4433,61 @@ msgstr ""
msgid "Status"
msgstr "Állapot"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
-msgstr ""
+msgstr "Gyártási kimenetek befejezése"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
-msgstr ""
+msgstr "A gyártási kimenetek befejezésre kerültek"
#: src/forms/BuildForms.tsx:408
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
-msgstr ""
+msgstr "Selejtezendő mennyiség"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Gyártási kimenetek selejtezése"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
-msgstr ""
+msgstr "A kiválasztott gyártási kimenetek befejezésre kerülnek, de selejtként lesznek megjelölve"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
-msgstr ""
+msgstr "A lefoglalt készlet tételek felhasználásra kerülnek"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
-msgstr ""
+msgstr "A gyártási kimenetek selejtezésre kerültek"
#: src/forms/BuildForms.tsx:470
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:489
-msgid "Selected build outputs will be removed"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:491
-msgid "Allocated stock items will be returned to stock"
-msgstr ""
+msgstr "Gyártási kimenetek visszavonása"
#: src/forms/BuildForms.tsx:498
-msgid "Build outputs have been cancelled"
-msgstr ""
+msgid "Selected build outputs will be removed"
+msgstr "A kiválasztott gyártási kimenetek eltávolításra kerülnek"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:500
+msgid "Allocated stock items will be returned to stock"
+msgstr "A lefoglalt készlet tételek visszakerülnek a készletbe"
+
+#: src/forms/BuildForms.tsx:507
+msgid "Build outputs have been cancelled"
+msgstr "A gyártási kimenetek visszavonásra kerültek"
+
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Lefoglalva"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Készlet helye"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "A készlet hozzárendelés forrás készlethelyének kiválasztása"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr "A készlet hozzárendelés forrás készlethelyének kiválasztása"
msgid "Allocate Stock"
msgstr "Készlet foglalása"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Készlet lefoglalva"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr "Készlet felhasználása"
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr "Felhasználásra ütemezett készlet tételek"
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Teljesen elfogyasztva"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4566,14 +4583,18 @@ msgstr "Elhasználva"
#: src/forms/ReturnOrderForms.tsx:138
#: src/forms/SalesOrderForms.tsx:185
msgid "Select project code for this line item"
-msgstr ""
+msgstr "Projekt kód kiválasztása ehhez a sortételhez"
#: src/forms/CompanyForms.tsx:150
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,25 +4602,21 @@ msgstr ""
msgid "Subscribed"
msgstr "Feliratkozva"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
-msgstr ""
-
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
+msgstr "Feliratkozás az értesítésekre ehhez az alkatrészhez"
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Felsőbb szintű alkatrész kategória"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
-msgstr ""
+msgstr "Feliratkozás az értesítésekre ehhez a kategóriához"
#: src/forms/PurchaseOrderForms.tsx:421
#~ msgid "Assign Batch Code{0}"
@@ -4607,11 +4624,11 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:440
msgid "Assign Batch Code and Serial Numbers"
-msgstr ""
+msgstr "Gyártási szám és sorozatszámok hozzárendelése"
#: src/forms/PurchaseOrderForms.tsx:442
msgid "Assign Batch Code"
-msgstr ""
+msgstr "Gyártási szám hozzárendelése"
#: src/forms/PurchaseOrderForms.tsx:444
#: src/forms/StockForms.tsx:428
@@ -4624,19 +4641,19 @@ msgstr "Hely kiválasztása"
#: src/forms/PurchaseOrderForms.tsx:470
msgid "Item Destination selected"
-msgstr ""
+msgstr "Tétel cél kiválasztva"
#: src/forms/PurchaseOrderForms.tsx:480
msgid "Part category default location selected"
-msgstr ""
+msgstr "Alkatrész kategória alapértelmezett készlethelye kiválasztva"
#: src/forms/PurchaseOrderForms.tsx:490
msgid "Received stock location selected"
-msgstr ""
+msgstr "Fogadott készlet készlethelye kiválasztva"
#: src/forms/PurchaseOrderForms.tsx:498
msgid "Default location selected"
-msgstr ""
+msgstr "Alapértelmezett készlethely kiválasztva"
#: src/forms/PurchaseOrderForms.tsx:559
msgid "Set Location"
@@ -4648,7 +4665,7 @@ msgstr "Helyszín beállítása"
#: src/forms/PurchaseOrderForms.tsx:576
msgid "Set Expiry Date"
-msgstr ""
+msgstr "Lejárati dátum beállítása"
#: src/forms/PurchaseOrderForms.tsx:582
#~ msgid "Store at line item destination"
@@ -4657,7 +4674,7 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:584
#: src/forms/StockForms.tsx:693
msgid "Adjust Packaging"
-msgstr ""
+msgstr "Csomagolás módosítása"
#: src/forms/PurchaseOrderForms.tsx:592
#: src/forms/StockForms.tsx:684
@@ -4679,7 +4696,7 @@ msgstr "Alapértelmezett helyre tárolás"
#: src/forms/PurchaseOrderForms.tsx:677
msgid "Store at line item destination "
-msgstr ""
+msgstr "Tárolás a sortétel célhelyén"
#: src/forms/PurchaseOrderForms.tsx:689
msgid "Store with already received stock"
@@ -4690,8 +4707,8 @@ msgstr "Tárolás a már megérkezett készlettel"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4700,7 +4717,7 @@ msgstr "Batch kód"
#: src/forms/PurchaseOrderForms.tsx:714
msgid "Enter batch code for received items"
-msgstr ""
+msgstr "Gyártási szám megadása a fogadott tételekhez"
#: src/forms/PurchaseOrderForms.tsx:727
#: src/forms/StockForms.tsx:218
@@ -4709,7 +4726,7 @@ msgstr "Sorozatszámok"
#: src/forms/PurchaseOrderForms.tsx:728
msgid "Enter serial numbers for received items"
-msgstr ""
+msgstr "Sorozatszámok megadása a fogadott tételekhez"
#: src/forms/PurchaseOrderForms.tsx:742
#: src/pages/stock/StockDetail.tsx:382
@@ -4719,7 +4736,7 @@ msgstr "Lejárati dátum"
#: src/forms/PurchaseOrderForms.tsx:743
msgid "Enter an expiry date for received items"
-msgstr ""
+msgstr "Lejárati dátum megadása a fogadott tételekhez"
#: src/forms/PurchaseOrderForms.tsx:755
#: src/forms/StockForms.tsx:728
@@ -4752,7 +4769,7 @@ msgstr "Fogadott"
#: src/forms/PurchaseOrderForms.tsx:869
msgid "Receive Line Items"
-msgstr ""
+msgstr "Sortételek fogadása"
#: src/forms/PurchaseOrderForms.tsx:875
msgid "Items received"
@@ -4760,43 +4777,43 @@ msgstr "Tételek beérkeztek"
#: src/forms/ReturnOrderForms.tsx:257
msgid "Receive Items"
-msgstr ""
+msgstr "Tételek fogadása"
#: src/forms/ReturnOrderForms.tsx:264
msgid "Item received into stock"
-msgstr ""
+msgstr "Tétel beérkezett a készletbe"
#: src/forms/SalesOrderForms.tsx:208
#: src/forms/SalesOrderForms.tsx:210
#: src/tables/sales/SalesOrderShipmentTable.tsx:215
msgid "Check Shipment"
-msgstr ""
+msgstr "Szállítmány ellenőrzése"
#: src/forms/SalesOrderForms.tsx:211
msgid "Marking the shipment as checked indicates that you have verified that all items included in this shipment are correct"
-msgstr ""
+msgstr "A szállítmány ellenőrzöttként történő megjelölése azt jelzi, hogy ellenőrizte, hogy a szállítmányban található összes tétel helyes"
#: src/forms/SalesOrderForms.tsx:221
msgid "Shipment marked as checked"
-msgstr ""
+msgstr "Szállítmány ellenőrzöttként megjelölve"
#: src/forms/SalesOrderForms.tsx:236
#: src/forms/SalesOrderForms.tsx:238
#: src/tables/sales/SalesOrderShipmentTable.tsx:228
msgid "Uncheck Shipment"
-msgstr ""
+msgstr "Szállítmány ellenőrzés visszavonása"
#: src/forms/SalesOrderForms.tsx:239
msgid "Marking the shipment as unchecked indicates that the shipment requires further verification"
-msgstr ""
+msgstr "A szállítmány ellenőrizetlenként történő megjelölése azt jelzi, hogy a szállítmány további ellenőrzést igényel"
#: src/forms/SalesOrderForms.tsx:249
msgid "Shipment marked as unchecked"
-msgstr ""
+msgstr "Szállítmány ellenőrizetlenként megjelölve"
#: src/forms/SalesOrderForms.tsx:480
msgid "Leave blank to use the order address"
-msgstr ""
+msgstr "Hagyja üresen a rendelési cím használatához"
#: src/forms/StockForms.tsx:110
#~ msgid "Create Stock Item"
@@ -4831,7 +4848,7 @@ msgstr "Új készlet tétel"
#: src/forms/StockForms.tsx:361
msgid "Select the part to install"
-msgstr ""
+msgstr "Válassza ki a telepítendő alkatrészt"
#: src/forms/StockForms.tsx:487
msgid "Confirm Stock Transfer"
@@ -4854,147 +4871,147 @@ msgstr "Visszavétel"
msgid "Count"
msgstr "Mennyiség"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Készlethez ad"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Raktárkészlet hozzáadva"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Kiválasztott készlettételek mennyiségének növelése adott értékkel."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Készlet csökkentése"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Készlet eltávolítva"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Kiválasztott készlettételek mennyiségének csökkentése adott értékkel."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Készlet áthelyezése"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Készlet áthelyezve"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Kiválasztott tétele mozgatása a meghatározott készlethelyre."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Visszavételi készlet"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Készlet visszavéve"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Kiválasztott tételek visszavétele készletre a megadott helyre."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Leltározás"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Készlet számlálva"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
-msgstr ""
+msgstr "Számolja meg a kiválasztott készlet tételeket és módosítsa a mennyiséget ennek megfelelően."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Készlet állapot módosítása"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
-msgstr ""
+msgstr "Készlet státusz megváltozott"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
-msgstr ""
+msgstr "A kiválasztott készlet tételek státuszának módosítása."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Készlet összevonása"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Készlet összevonva"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Készlet tételek összevonása"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
-msgstr ""
+msgstr "Az összevonási művelet nem visszafordítható"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
-msgstr ""
+msgstr "Nyomonkövetési információk elveszhetnek tételek összevonásakor"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
-msgstr ""
+msgstr "Beszállítói információk elveszhetnek tételek összevonásakor"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
-msgstr ""
+msgstr "Készlet hozzárendelése ügyfélhez"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
-msgstr ""
+msgstr "Készlet hozzárendelve az ügyfélhez"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Készlet tétel törlése"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Készlet törölve"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
-msgstr ""
+msgstr "Ez a művelet véglegesen törli a kiválasztott készlet tételeket."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Szülő készlet hely"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
-msgstr ""
+msgstr "Sorozatszám keresése"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
-msgstr ""
+msgstr "Nincs egyező tétel"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
-msgstr ""
+msgstr "Több egyező tétel"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
-msgstr ""
+msgstr "Érvénytelen válasz a szervertől"
#: src/forms/selectionListFields.tsx:95
msgid "Entries"
@@ -5002,7 +5019,7 @@ msgstr "Bejegyzések"
#: src/forms/selectionListFields.tsx:96
msgid "List of entries to choose from"
-msgstr ""
+msgstr "Választható bejegyzések listája"
#: src/forms/selectionListFields.tsx:100
#: src/pages/part/PartStockHistoryDetail.tsx:59
@@ -5036,7 +5053,7 @@ msgstr "Nem található"
#: src/functions/api.tsx:45
msgid "Method not allowed"
-msgstr ""
+msgstr "Módszer nem engedélyezett"
#: src/functions/api.tsx:48
msgid "Internal server error"
@@ -5062,99 +5079,110 @@ msgstr "Belső szerverhiba"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Kijelentkezve"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Nincs válasz a szervertől."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "MFA alapú bejelentkezés sikeres"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
-msgstr ""
+msgstr "Az MFA adatok automatikusan megadásra kerültek a böngészőben"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Kijelentkezve"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Sikeresen kijelentkeztél"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Nyelv megváltoztatva"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
-msgstr ""
+msgstr "Az aktív nyelv megváltozott a profilban beállítottra"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "A téma megváltoztatva"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
-msgstr ""
+msgstr "Az aktív téma megváltozott a profilban beállítottra"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Nézd meg a beérkező levelek mappájában a visszaállítási linket. Ez csak akkor működik, ha van fiókod. Ellenőrizd a spameket is."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Visszaállítás sikertelen"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Már bejelentkezett"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Egy ütköző munkamenet található a szerveren ehhez a böngészőhöz. Kérjük előbb jelentkezzen ki abból."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Bejelentkezve"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Sikeres bejelentkezés"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
+msgstr "MFA beállítása sikertelen"
+
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Jelszó beállítva"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "A jelszó beállítása sikeresen megtörtént. Most már bejelentkezhetsz az új jelszavaddal"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "A jelszót nem lehet megváltoztatni"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
-msgstr ""
+msgstr "A két jelszó nem egyezett meg"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Jelszó megváltozott"
@@ -5204,17 +5232,17 @@ msgstr "Időtúllépés"
#: src/functions/notifications.tsx:49
msgid "The request timed out"
-msgstr ""
+msgstr "A kérés túllépte az időkorlátot"
#: src/hooks/UseDataExport.tsx:34
msgid "Exporting Data"
msgstr "Adatok exportálása"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Adatok exportálása"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Exportálás"
@@ -5225,7 +5253,7 @@ msgstr "A folyamat sikertelen"
#: src/hooks/UseDataOutput.tsx:75
msgid "Process completed successfully"
-msgstr ""
+msgstr "Folyamat sikeresen befejezve"
#: src/hooks/UseForm.tsx:96
msgid "Item Created"
@@ -5237,11 +5265,11 @@ msgstr "Tétel frissítve"
#: src/hooks/UseForm.tsx:137
msgid "Items Updated"
-msgstr ""
+msgstr "Tételek frissítve"
#: src/hooks/UseForm.tsx:139
msgid "Update multiple items"
-msgstr ""
+msgstr "Több tétel frissítése"
#: src/hooks/UseForm.tsx:169
msgid "Item Deleted"
@@ -5257,27 +5285,27 @@ msgstr "Biztosan törli ezt az elemet?"
#: src/hooks/UseStockAdjustActions.tsx:100
msgid "Count selected stock items"
-msgstr ""
+msgstr "Kiválasztott készlet tételek megszámolása"
#: src/hooks/UseStockAdjustActions.tsx:110
msgid "Add to selected stock items"
-msgstr ""
+msgstr "Hozzáadás a kiválasztott készlet tételekhez"
#: src/hooks/UseStockAdjustActions.tsx:120
msgid "Remove from selected stock items"
-msgstr ""
+msgstr "Eltávolítás a kiválasztott készlet tételekből"
#: src/hooks/UseStockAdjustActions.tsx:130
msgid "Transfer selected stock items"
-msgstr ""
+msgstr "Kiválasztott készlet tételek áthelyezése"
#: src/hooks/UseStockAdjustActions.tsx:140
msgid "Merge selected stock items"
-msgstr ""
+msgstr "Kiválasztott készlet tételek összevonása"
#: src/hooks/UseStockAdjustActions.tsx:150
msgid "Change status of selected stock items"
-msgstr ""
+msgstr "Kiválasztott készlet tételek státuszának módosítása"
#: src/hooks/UseStockAdjustActions.tsx:158
msgid "Assign Stock"
@@ -5285,11 +5313,11 @@ msgstr "Készlet hozzárendelése"
#: src/hooks/UseStockAdjustActions.tsx:160
msgid "Assign selected stock items to a customer"
-msgstr ""
+msgstr "Kiválasztott készlet tételek hozzárendelése ügyfélhez"
#: src/hooks/UseStockAdjustActions.tsx:170
msgid "Return selected items into stock"
-msgstr ""
+msgstr "Kiválasztott tételek visszavétele készletbe"
#: src/hooks/UseStockAdjustActions.tsx:178
msgid "Delete Stock"
@@ -5297,10 +5325,10 @@ msgstr "Készlet törlése"
#: src/hooks/UseStockAdjustActions.tsx:180
msgid "Delete selected stock items"
-msgstr ""
+msgstr "Kiválasztott készlet tételek törlése"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Készlet műveletek"
@@ -5383,18 +5411,18 @@ msgstr "Nincsen felhasználóneve?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Többfaktoros hitelesítés"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP kód"
#: src/pages/Auth/MFA.tsx:35
msgid "Enter one of your codes: {mfa_types}"
-msgstr ""
+msgstr "Adja meg az egyik kódját: {mfa_types}"
#: src/pages/Auth/MFA.tsx:42
msgid "Remember this device"
@@ -5402,7 +5430,7 @@ msgstr "Eszköz megjegyzése"
#: src/pages/Auth/MFA.tsx:44
msgid "If enabled, you will not be asked for MFA on this device for 30 days."
-msgstr ""
+msgstr "Ha engedélyezve van, nem fogják kérni az MFA-t ezen az eszközön 30 napig."
#: src/pages/Auth/MFA.tsx:53
msgid "Log in"
@@ -5410,7 +5438,7 @@ msgstr "Bejelentkezés"
#: src/pages/Auth/MFASetup.tsx:23
msgid "MFA Setup Required"
-msgstr ""
+msgstr "MFA beállítás szükséges"
#: src/pages/Auth/MFASetup.tsx:34
msgid "Add TOTP"
@@ -5448,7 +5476,7 @@ msgstr "Új jelszó beállítása"
#: src/pages/Auth/ResetPassword.tsx:35
msgid "The desired new password"
-msgstr ""
+msgstr "A kívánt új jelszó"
#: src/pages/Auth/ResetPassword.tsx:44
msgid "Send Password"
@@ -5464,7 +5492,7 @@ msgstr "Jelszó küldése"
#: src/pages/Auth/VerifyEmail.tsx:20
msgid "You need to provide a valid key."
-msgstr ""
+msgstr "Érvényes kulcsot kell megadnia."
#: src/pages/Auth/VerifyEmail.tsx:28
msgid "Verify Email"
@@ -5481,7 +5509,7 @@ msgstr "Hiba: {0}"
#: src/pages/ErrorPage.tsx:23
msgid "An unexpected error has occurred"
-msgstr ""
+msgstr "Váratlan hiba történt"
#: src/pages/ErrorPage.tsx:28
#~ msgid "Sorry, an unexpected error has occurred."
@@ -5641,7 +5669,7 @@ msgstr ""
#: src/pages/Index/Scan.tsx:65
msgid "Item already scanned"
-msgstr ""
+msgstr "Tétel már beolvasva"
#: src/pages/Index/Scan.tsx:82
msgid "API Error"
@@ -5649,7 +5677,7 @@ msgstr "API Hiba"
#: src/pages/Index/Scan.tsx:83
msgid "Failed to fetch instance data"
-msgstr ""
+msgstr "Példány adatok lekérése sikertelen"
#: src/pages/Index/Scan.tsx:130
msgid "Scan Error"
@@ -5686,7 +5714,7 @@ msgstr "Művelet"
#: src/pages/Index/Scan.tsx:217
msgid "No Items Selected"
-msgstr ""
+msgstr "Nincs kiválasztott tétel"
#: src/pages/Index/Scan.tsx:217
#~ msgid "Manual input"
@@ -5694,7 +5722,7 @@ msgstr ""
#: src/pages/Index/Scan.tsx:218
msgid "Scan and select items to perform actions"
-msgstr ""
+msgstr "Olvassa be és válassza ki a tételeket a műveletek végrehajtásához"
#: src/pages/Index/Scan.tsx:218
#~ msgid "Image Barcode"
@@ -5809,7 +5837,7 @@ msgstr "Beolvasott cikkek"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:33
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:113
msgid "Edit Account Information"
-msgstr ""
+msgstr "Profil információk szerkesztése"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:34
#~ msgid "User details updated"
@@ -5817,7 +5845,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:37
msgid "Account details updated"
-msgstr ""
+msgstr "Profil részletek frissítve"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:46
#~ msgid "User Actions"
@@ -5830,7 +5858,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:55
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:136
msgid "Edit Profile Information"
-msgstr ""
+msgstr "Profil információk szerkesztése"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:55
#~ msgid "Last name"
@@ -5872,7 +5900,7 @@ msgstr "Vezetéknév"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:72
msgid "Staff Access"
-msgstr ""
+msgstr "Személyzeti hozzáférés"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:85
#: src/pages/core/UserDetail.tsx:119
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Pozíció"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Típus"
@@ -5901,11 +5929,11 @@ msgstr "Elsődleges csoport"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:104
msgid "Account Details"
-msgstr ""
+msgstr "Profil részletek"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:107
msgid "Account Actions"
-msgstr ""
+msgstr "Profil műveletek"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:111
msgid "Edit Account"
@@ -5918,7 +5946,7 @@ msgstr "Jelszó módosítása"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:119
msgid "Change User Password"
-msgstr ""
+msgstr "Felhasználó jelszó módosítása"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:131
msgid "Profile Details"
@@ -5933,222 +5961,222 @@ msgstr "Profil szerkesztése"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
-msgstr ""
+msgstr "Újra hitelesítés sikeres"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
-msgstr ""
+msgstr "Sikeresen újra hitelesítve lett."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
-msgstr ""
+msgstr "Hiba az újra hitelesítés közben"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
-msgstr ""
+msgstr "Újra hitelesítés sikertelen"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
-msgid "Reauthenticate"
-msgstr ""
+msgstr "Újra hitelesítés meghiúsult"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
-msgid "Reauthentiction is required to continue."
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
+msgid "Reauthenticate"
+msgstr "Újra hitelesítés"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
+msgid "Reauthentiction is required to continue."
+msgstr "Újra hitelesítés szükséges a folytatáshoz."
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Add meg a jelszavad"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
-msgstr ""
+msgstr "Adja meg az egyik TOTP kódját"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
-msgstr ""
+msgstr "WebAuthn hitelesítő adat eltávolítva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
-msgstr ""
+msgstr "WebAuthn hitelesítő adat sikeresen eltávolítva."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
-msgstr ""
+msgstr "Hiba a WebAuthn hitelesítő adat eltávolításakor"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
-msgstr ""
+msgstr "WebAuthn hitelesítő adat eltávolítása"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
-msgstr ""
+msgstr "Eltávolítás megerősítése"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
-msgstr ""
+msgstr "WebAuth hitelesítő adat eltávolításának megerősítése"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
-msgstr ""
+msgstr "TOTP eltávolítva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
-msgstr ""
+msgstr "TOTP token sikeresen eltávolítva."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
-msgstr ""
+msgstr "Hiba a TOTP token eltávolításakor"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
-msgstr ""
+msgstr "TOTP token eltávolítása"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
-msgstr ""
+msgstr "TOTP kód eltávolításának megerősítése"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
-msgstr ""
+msgstr "TOTP már regisztrálva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
-msgstr ""
+msgstr "Ehhez a fiókhoz már regisztrálva van egy TOTP token."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
-msgstr ""
+msgstr "Hiba a TOTP regisztráció lekérésekor"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
-msgstr ""
+msgstr "Váratlan hiba történt a TOTP regisztrációs adatok lekérésekor."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
-msgstr ""
+msgstr "TOTP regisztrálva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
-msgstr ""
+msgstr "TOTP token sikeresen regisztrálva."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
-msgstr ""
+msgstr "Hiba a TOTP token regisztrációjakor"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "TOTP token regisztrálása"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
-msgstr ""
+msgstr "Hiba a helyreállítási kódok lekérésekor"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Helyreállító kódok"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
-msgstr ""
+msgstr "A következő egyszeri helyreállítási kódok használhatók"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
-msgid "No Unused Codes"
-msgstr ""
+msgstr "Helyreállítási kódok másolása a vágólapra"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+msgid "No Unused Codes"
+msgstr "Nincsenek fel nem használt kódok"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
-msgid "WebAuthn Registered"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
-msgid "WebAuthn credential registered successfully"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
-msgid "Error registering WebAuthn credential"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
-msgid "WebAuthn Registration Failed"
-msgstr ""
+msgstr "Nincsenek elérhető helyreállítási kódok"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+msgid "WebAuthn Registered"
+msgstr "WebAuthn regisztrálva"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
+msgid "WebAuthn credential registered successfully"
+msgstr "WebAuthn hitelesítő adat sikeresen regisztrálva"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
+msgid "Error registering WebAuthn credential"
+msgstr "Hiba a WebAuthn hitelesítő adat regisztrációjakor"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
+msgid "WebAuthn Registration Failed"
+msgstr "WebAuthn regisztráció sikertelen"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
-msgstr ""
+msgstr "WebAuthn hitelesítő adat regisztrációja meghiúsult"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
-msgstr ""
+msgstr "Hiba a WebAuthn regisztráció lekérésekor"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
-msgid "Time-based One-Time Password"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
-msgid "One-Time pre-generated recovery codes"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
-msgid "WebAuthn"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
-msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
-msgstr ""
+msgid "Time-based One-Time Password"
+msgstr "Időalapú egyszeri jelszó"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
+msgid "One-Time pre-generated recovery codes"
+msgstr "Előre generált egyszeri helyreállítási kódok"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
+msgid "WebAuthn"
+msgstr "WebAuthn"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
+msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
+msgstr "A Web Authentication (WebAuthn) egy webes szabvány a biztonságos hitelesítéshez"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Utoljára használva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Létrehozva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Nincs beállítva"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
-msgstr ""
+msgstr "Nincsenek többtényezős token-ek beállítva ehhez a profilhoz"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
-msgstr ""
+msgstr "Hitelesítési módszer regisztrálása"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
-msgstr ""
+msgstr "Nincsenek elérhető MFA módszerek"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
-msgstr ""
+msgstr "Nincsenek elérhető MFA módszerek konfiguráláshoz"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:27
msgid "Secret"
@@ -6160,49 +6188,49 @@ msgstr "Egyszer használható jelszó"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:41
msgid "Enter the TOTP code to ensure it registered correctly"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "E-mail címek"
+msgstr "Adja meg a TOTP kódot, hogy ellenőrizze, helyesen lett-e regisztrálva"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E-mail címek"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Single Sign On (SSO)"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Nem engedélyezett"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Nem engedélyezett"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "A Single Sign On nincs engedélyezve ezen a szerveren "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Hozzáférési tokenek"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
-msgstr ""
+msgstr "Munkamenet információ"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "Időbélyeg"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Mód"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
-msgstr ""
+msgstr "Hiba az email frissítése közben"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
-msgstr ""
+msgstr "Jelenleg nincsenek regisztrált email címek."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "A következő email címek vannak hozzárendelve a felhasználódhoz:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Elsődleges"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Ellenőrizve"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Nem ellenőrzött"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Legyen elsődleges"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Megerősítés újraküldése"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Email cím hozzáadása"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail cím"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Email cím"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Email cím hozzáadása"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail cím"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Email cím"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,25 +6298,29 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Email hozzáadása"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Hiba az email hozzáadása közben"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Email hozzáadása"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
-msgstr ""
+msgstr "Nincs szolgáltató csatlakoztatva ehhez a fiókhoz."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
-msgstr ""
+msgstr "A fiókjába bármelyik alábbi szolgáltatóval bejelentkezhet"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
-msgstr ""
+msgstr "Szolgáltató kapcsolat eltávolítása"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:556
#~ msgid "Unused Codes"
@@ -6462,27 +6490,27 @@ msgstr "E-mail üzenetek"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:36
msgid "System Status"
-msgstr ""
+msgstr "Rendszer státusz"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:47
msgid "Admin Center Information"
-msgstr ""
+msgstr "Admin központ információ"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:53
msgid "The home panel (and the whole Admin Center) is a new feature starting with the new UI and was previously (before 1.0) not available."
-msgstr ""
+msgstr "A kezdőlap panel (és az egész Admin központ) egy új funkció az új felhasználói felülettel, amely korábban (1.0 előtt) nem volt elérhető."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:60
msgid "The admin center provides a centralized location for all administration functionality and is meant to replace all interaction with the (django) backend admin interface."
-msgstr ""
+msgstr "Az admin központ központosított helyet biztosít minden adminisztrációs funkcióhoz és célja, hogy helyettesítse az összes interakciót a (django) háttér admin felülettel."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:67
msgid "Please open feature requests (after checking the tracker) for any existing backend admin functionality you are missing in this UI. The backend admin interface should be used carefully and seldom."
-msgstr ""
+msgstr "Kérjük, nyisson funkció kéréseket (a nyomkövető ellenőrzése után) minden olyan meglévő háttér admin funkcióhoz, amely hiányzik ebből a felületből. A háttér admin felületet óvatosan és ritkán kell használni."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:85
msgid "Quick Actions"
-msgstr ""
+msgstr "Gyors műveletek"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:107
#~ msgid "User Management"
@@ -6490,7 +6518,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:115
msgid "Home"
-msgstr ""
+msgstr "Kezdőlap"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:122
msgid "Users / Access"
@@ -6530,7 +6558,7 @@ msgstr "Pénznemek"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:183
msgid "Custom States"
-msgstr ""
+msgstr "Egyedi állapotok"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:189
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:57
@@ -6581,7 +6609,7 @@ msgstr "PLM"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:285
msgid "Extend / Integrate"
-msgstr ""
+msgstr "Bővítés / Integráció"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:299
msgid "Advanced Options"
@@ -6601,7 +6629,7 @@ msgstr "További beállítások"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:60
msgid "Machine Drivers"
-msgstr ""
+msgstr "Gép meghajtók"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:62
#~ msgid "There are no machine registry errors."
@@ -6617,19 +6645,19 @@ msgstr "Berendezés hibák"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:89
msgid "Registry Registry Errors"
-msgstr ""
+msgstr "Regiszter regiszter hibák"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:92
msgid "There are machine registry errors"
-msgstr ""
+msgstr "Gép regiszter hibák vannak"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:98
msgid "Machine Registry Errors"
-msgstr ""
+msgstr "Gép regiszter hibák"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:101
msgid "There are no machine registry errors"
-msgstr ""
+msgstr "Nincsenek gép regiszter hibák"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:122
#: src/tables/machine/MachineListTable.tsx:502
@@ -6675,7 +6703,7 @@ msgstr "Összevonás"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:31
msgid "Attach to Model"
-msgstr ""
+msgstr "Csatolás modellhez"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:55
#~ msgid "Generated Reports"
@@ -6691,7 +6719,7 @@ msgstr "Háttér munkavégző nem fut"
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:31
msgid "The background task manager service is not running. Contact your system administrator."
-msgstr ""
+msgstr "A háttérfeladat-kezelő szolgáltatás nem fut. Vegye fel a kapcsolatot a rendszergazdával."
#: src/pages/Index/Settings/AdminCenter/TaskManagementPanel.tsx:35
#~ msgid "Background Worker Not Running"
@@ -6770,7 +6798,7 @@ msgstr "Tokenek"
#: src/pages/Index/Settings/PluginSettingsGroup.tsx:99
msgid "The settings below are specific to each available plugin"
-msgstr ""
+msgstr "Az alábbi beállítások minden egyes elérhető bővítményhez specifikusak"
#: src/pages/Index/Settings/SystemSettings.tsx:78
msgid "Authentication"
@@ -6791,7 +6819,7 @@ msgstr "Vonalkódok"
#: src/pages/Index/Settings/SystemSettings.tsx:128
#: src/pages/Index/Settings/UserSettings.tsx:113
msgid "The settings below are specific to each available notification method"
-msgstr ""
+msgstr "Az alábbi beállítások minden egyes elérhető értesítési módszerhez specifikusak"
#: src/pages/Index/Settings/SystemSettings.tsx:134
msgid "Pricing"
@@ -6855,15 +6883,15 @@ msgstr "Megjelölés olvasatlanként"
#: src/pages/build/BuildDetail.tsx:70
msgid "No Required Items"
-msgstr ""
+msgstr "Nincsenek szükséges tételek"
#: src/pages/build/BuildDetail.tsx:72
msgid "This build order does not have any required items."
-msgstr ""
+msgstr "Ez a gyártási megrendelés nem rendelkezik szükséges tételekkel."
#: src/pages/build/BuildDetail.tsx:73
msgid "The assembled part may not have a Bill of Materials (BOM) defined, or the BOM is empty."
-msgstr ""
+msgstr "Az összeszerelt alkatrészhez nem lehet anyagjegyzék (BOM) definiálva, vagy a BOM üres."
#: src/pages/build/BuildDetail.tsx:80
#~ msgid "Build Status"
@@ -6921,7 +6949,7 @@ msgstr "Egyedi státusz"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Alárendelt gyártások"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7095,7 +7123,7 @@ msgstr "Rendelés visszavonása"
#: src/pages/build/BuildDetail.tsx:599
msgid "Hold Build Order"
-msgstr ""
+msgstr "Gyártási megrendelés felfüggesztése"
#: src/pages/build/BuildDetail.tsx:601
#: src/pages/purchasing/PurchaseOrderDetail.tsx:428
@@ -7209,7 +7237,7 @@ msgstr "Gyártási utasítás"
#: src/pages/build/BuildIndex.tsx:35
#: src/tables/build/BuildOrderTable.tsx:184
msgid "Show external build orders"
-msgstr ""
+msgstr "Külső gyártási megrendelések megjelenítése"
#: src/pages/build/BuildIndex.tsx:39
#~ msgid "New Build Order"
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Táblázat nézet"
@@ -7245,8 +7274,9 @@ msgstr "Naptár nézet"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
-msgstr ""
+msgstr "Paraméter nézet"
#: src/pages/company/CompanyDetail.tsx:100
msgid "Website"
@@ -7349,7 +7379,7 @@ msgstr "Külső link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Alkatrész részletei"
@@ -7407,7 +7437,7 @@ msgstr "Csomagolási mennyiség"
#: src/pages/company/SupplierPartDetail.tsx:205
msgid "Supplier Availability"
-msgstr ""
+msgstr "Beszállítói elérhetőség"
#: src/pages/company/SupplierPartDetail.tsx:213
msgid "Availability Updated"
@@ -7419,7 +7449,7 @@ msgstr "Elérhetőség"
#: src/pages/company/SupplierPartDetail.tsx:247
msgid "Supplier Part Details"
-msgstr ""
+msgstr "Beszállítói alkatrész részletei"
#: src/pages/company/SupplierPartDetail.tsx:280
#: src/pages/part/PartPricingPanel.tsx:113
@@ -7429,7 +7459,7 @@ msgstr "Beszállító árazás"
#: src/pages/company/SupplierPartDetail.tsx:313
msgid "Supplier Part Actions"
-msgstr ""
+msgstr "Beszállítói alkatrész műveletek"
#: src/pages/company/SupplierPartDetail.tsx:337
#: src/tables/purchasing/SupplierPartTable.tsx:244
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Beszállítói alkatrész hozzáadása"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Nincs készlet"
@@ -7456,7 +7486,7 @@ msgstr "Nincs készlet"
#: src/pages/core/GroupDetail.tsx:81
#: src/pages/core/UserDetail.tsx:224
msgid "System Overview"
-msgstr ""
+msgstr "Rendszer áttekintés"
#: src/pages/core/GroupDetail.tsx:45
msgid "Group Name"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Alap felhasználó"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Alkategóriák"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7520,7 +7550,7 @@ msgstr "Szerkezeti"
#: src/pages/part/CategoryDetail.tsx:155
msgid "Parent default location"
-msgstr ""
+msgstr "Szülő alapértelmezett készlethely"
#: src/pages/part/CategoryDetail.tsx:162
msgid "Default location"
@@ -7534,14 +7564,14 @@ msgstr "Legfelső szintű alkatrész kategória"
#: src/pages/part/CategoryDetail.tsx:251
#: src/tables/part/PartCategoryTable.tsx:122
msgid "Edit Part Category"
-msgstr ""
+msgstr "Alkatrész kategória szerkesztése"
#: src/pages/part/CategoryDetail.tsx:192
msgid "Move items to parent category"
-msgstr ""
+msgstr "Elemek áthelyezése a szülő kategóriába"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Tételek törlése"
@@ -7556,15 +7586,15 @@ msgstr "Alkatrész műveletek"
#: src/pages/part/CategoryDetail.tsx:208
msgid "Action for parts in this category"
-msgstr ""
+msgstr "Műveletek az ebben a kategóriában lévő alkatrészekhez"
#: src/pages/part/CategoryDetail.tsx:214
msgid "Child Categories Action"
-msgstr ""
+msgstr "Alkategória műveletek"
#: src/pages/part/CategoryDetail.tsx:215
msgid "Action for child categories in this category"
-msgstr ""
+msgstr "Műveletek az ebben a kategóriában lévő alkategóriákhoz"
#: src/pages/part/CategoryDetail.tsx:247
#: src/tables/part/PartCategoryTable.tsx:143
@@ -7595,11 +7625,11 @@ msgstr "Alkatrészjegyzék ellenőrzése"
#: src/pages/part/PartDetail.tsx:184
msgid "Do you want to validate the bill of materials for this assembly?"
-msgstr ""
+msgstr "Szeretné ellenőrizni az alkatrészjegyzéket ehhez az összeállításhoz?"
#: src/pages/part/PartDetail.tsx:187
msgid "Bill of materials scheduled for validation"
-msgstr ""
+msgstr "Alkatrészjegyzék ellenőrzésre ütemezve"
#: src/pages/part/PartDetail.tsx:187
#~ msgid "BOM validated"
@@ -7611,20 +7641,20 @@ msgstr "Alkatrészjegyzék ellenőrizve"
#: src/pages/part/PartDetail.tsx:206
msgid "The Bill of Materials for this part has been validated"
-msgstr ""
+msgstr "Az alkatrészjegyzék ehhez az alkatrészhez ellenőrizve lett"
#: src/pages/part/PartDetail.tsx:210
#: src/pages/part/PartDetail.tsx:215
msgid "BOM Not Validated"
-msgstr ""
+msgstr "Alkatrészjegyzék nincs ellenőrizve"
#: src/pages/part/PartDetail.tsx:211
msgid "The Bill of Materials for this part has previously been checked, but requires revalidation"
-msgstr ""
+msgstr "Az alkatrészjegyzék ehhez az alkatrészhez korábban ellenőrizve lett, de újraellenőrzést igényel"
#: src/pages/part/PartDetail.tsx:216
msgid "The Bill of Materials for this part has not yet been validated"
-msgstr ""
+msgstr "Az alkatrészjegyzék ehhez az alkatrészhez még nem lett ellenőrizve"
#: src/pages/part/PartDetail.tsx:247
msgid "Validated On"
@@ -7666,7 +7696,7 @@ msgstr "Alapértelmezett hely"
#: src/pages/part/PartDetail.tsx:500
msgid "Category Default Location"
-msgstr ""
+msgstr "Kategória alapértelmezett készlethely"
#: src/pages/part/PartDetail.tsx:507
msgid "Units"
@@ -7698,11 +7728,11 @@ msgstr "Rendelve"
#: src/pages/part/PartDetail.tsx:555
msgid "Required for Orders"
-msgstr ""
+msgstr "Rendelésekhez szükséges"
#: src/pages/part/PartDetail.tsx:566
msgid "Allocated to Build Orders"
-msgstr ""
+msgstr "Gyártási rendelésekhez lefoglalva"
#: src/pages/part/PartDetail.tsx:578
msgid "Allocated to Sales Orders"
@@ -7733,7 +7763,7 @@ msgstr "Gyártmány alkatrész"
#: src/pages/part/PartDetail.tsx:636
msgid "Component Part"
-msgstr ""
+msgstr "Komponens alkatrész"
#: src/pages/part/PartDetail.tsx:641
#: src/tables/bom/BomTable.tsx:419
@@ -7747,14 +7777,14 @@ msgstr "Nyomkövethető alkatrész"
#: src/pages/part/PartDetail.tsx:652
msgid "Purchaseable Part"
-msgstr ""
+msgstr "Beszerezhető alkatrész"
#: src/pages/part/PartDetail.tsx:658
msgid "Saleable Part"
msgstr "Értékesíthető alkatrész"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Készítette"
msgid "Default Supplier"
msgstr "Alapértelmezett beszállító"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Alapértelmezett lejárat"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "nap"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Ártartomány"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Legutolsó sorozatszám"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Alkatrész revízió kiválasztása"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Változatok"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Foglalások"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Alkatrészjegyzék"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Felhasználva ebben"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Alkatrész árak"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Teszt sablonok"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Kapcsolódó alkatrészek"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Zárolt alkatrész"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Az alkatrész paraméterek nem szerkeszthetők, mivel az alkatrész zárolva van"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Kötelező"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
-msgstr ""
+msgstr "Hiány"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Alkatrész hozzáadása"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Alkatrész törlése"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
-msgstr ""
+msgstr "Az alkatrész törlése nem visszavonható"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Rendelés"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Készlet rendelés"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Sorozatszámra keresés"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Alkatrész műveletek"
@@ -7970,11 +8000,11 @@ msgstr "Eladási előzmények"
#: src/pages/part/PartStockHistoryDetail.tsx:80
msgid "Edit Stocktake Entry"
-msgstr ""
+msgstr "Leltár bejegyzés szerkesztése"
#: src/pages/part/PartStockHistoryDetail.tsx:88
msgid "Delete Stocktake Entry"
-msgstr ""
+msgstr "Leltár bejegyzés törlése"
#: src/pages/part/PartStockHistoryDetail.tsx:107
#: src/pages/part/PartStockHistoryDetail.tsx:211
@@ -8008,8 +8038,8 @@ msgstr "Maximum érték"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maximum érték"
msgid "Total Price"
msgstr "Teljes ár"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Összetevő"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimum ár"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Maximum ár"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Maximum ár"
msgid "Unit Price"
msgstr "Egységár"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Kördiagram"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Oszlopdiagram"
@@ -8101,11 +8131,11 @@ msgstr "Árazási adatok frissítése"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:94
msgid "Pricing data updated"
-msgstr ""
+msgstr "Árazási adatok frissítve"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:101
msgid "Failed to update pricing data"
-msgstr ""
+msgstr "Az árazási adatok frissítése sikertelen"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:129
msgid "Edit Pricing"
@@ -8144,11 +8174,11 @@ msgstr "Legutóbb frissítve"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:292
msgid "Pricing Not Set"
-msgstr ""
+msgstr "Árazás nincs beállítva"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:293
msgid "Pricing data has not been calculated for this part"
-msgstr ""
+msgstr "Az árazási adatok nem lettek kiszámítva ehhez az alkatrészhez"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:297
msgid "Pricing Actions"
@@ -8160,11 +8190,11 @@ msgstr "Frissítés"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:301
msgid "Refresh pricing data"
-msgstr ""
+msgstr "Árazási adatok frissítése"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:316
msgid "Edit pricing data"
-msgstr ""
+msgstr "Árazási adatok szerkesztése"
#: src/pages/part/pricing/PricingPanel.tsx:24
msgid "No data available"
@@ -8180,7 +8210,7 @@ msgstr "Ár adatok nem elérhetőek"
#: src/pages/part/pricing/PricingPanel.tsx:77
msgid "Loading pricing data"
-msgstr ""
+msgstr "Árazási adatok betöltése"
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:48
msgid "Purchase Price"
@@ -8305,19 +8335,19 @@ msgstr "Egyéb tételek"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:410
msgid "Issue Purchase Order"
-msgstr ""
+msgstr "Beszerzési megrendelés kiállítása"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:418
msgid "Cancel Purchase Order"
-msgstr ""
+msgstr "Beszerzési megrendelés törlése"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:426
msgid "Hold Purchase Order"
-msgstr ""
+msgstr "Beszerzési megrendelés felfüggesztése"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:434
msgid "Complete Purchase Order"
-msgstr ""
+msgstr "Beszerzési megrendelés lezárása"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:490
#: src/pages/sales/ReturnOrderDetail.tsx:501
@@ -8334,13 +8364,13 @@ msgstr "Vevői azonosító"
#: src/pages/sales/ReturnOrderDetail.tsx:196
msgid "Return Address"
-msgstr ""
+msgstr "Visszaküldési cím"
#: src/pages/sales/ReturnOrderDetail.tsx:202
#: src/pages/sales/SalesOrderDetail.tsx:195
#: src/pages/sales/SalesOrderShipmentDetail.tsx:179
msgid "Not specified"
-msgstr ""
+msgstr "Nincs megadva"
#: src/pages/sales/ReturnOrderDetail.tsx:349
#~ msgid "Order canceled"
@@ -8379,7 +8409,7 @@ msgstr "Kész szállítmányok"
#: src/pages/sales/SalesOrderDetail.tsx:189
#: src/pages/sales/SalesOrderShipmentDetail.tsx:168
msgid "Shipping Address"
-msgstr ""
+msgstr "Szállítási cím"
#: src/pages/sales/SalesOrderDetail.tsx:317
msgid "Edit Sales Order"
@@ -8398,23 +8428,23 @@ msgstr "Szállítások"
#: src/pages/sales/SalesOrderDetail.tsx:448
msgid "Issue Sales Order"
-msgstr ""
+msgstr "Értékesítési megrendelés kiállítása"
#: src/pages/sales/SalesOrderDetail.tsx:456
msgid "Cancel Sales Order"
-msgstr ""
+msgstr "Értékesítési megrendelés törlése"
#: src/pages/sales/SalesOrderDetail.tsx:464
msgid "Hold Sales Order"
-msgstr ""
+msgstr "Értékesítési megrendelés felfüggesztése"
#: src/pages/sales/SalesOrderDetail.tsx:472
msgid "Ship Sales Order"
-msgstr ""
+msgstr "Értékesítési megrendelés szállítása"
#: src/pages/sales/SalesOrderDetail.tsx:474
msgid "Ship this order?"
-msgstr ""
+msgstr "Szállítja ezt a megrendelést?"
#: src/pages/sales/SalesOrderDetail.tsx:475
msgid "Order shipped"
@@ -8422,7 +8452,7 @@ msgstr "Megrendelés szállítva"
#: src/pages/sales/SalesOrderDetail.tsx:483
msgid "Complete Sales Order"
-msgstr ""
+msgstr "Értékesítési megrendelés lezárása"
#: src/pages/sales/SalesOrderDetail.tsx:528
msgid "Ship Order"
@@ -8431,7 +8461,7 @@ msgstr "Megrendelés kiszállítása"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:140
#: src/tables/sales/SalesOrderShipmentTable.tsx:156
msgid "Shipment Reference"
-msgstr ""
+msgstr "Szállítmány hivatkozás"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:146
msgid "Tracking Number"
@@ -8443,15 +8473,15 @@ msgstr "Számla sorszám"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:189
msgid "Allocated Items"
-msgstr ""
+msgstr "Lefoglalt tételek"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:194
msgid "Checked By"
-msgstr ""
+msgstr "Ellenőrizte"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:200
msgid "Not checked"
-msgstr ""
+msgstr "Nincs ellenőrizve"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:206
#: src/tables/ColumnRenderers.tsx:518
@@ -8471,25 +8501,25 @@ msgstr "Kézbesítés dátuma"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:253
msgid "Shipment Details"
-msgstr ""
+msgstr "Szállítmány részletei"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:292
#: src/pages/sales/SalesOrderShipmentDetail.tsx:406
#: src/tables/sales/SalesOrderShipmentTable.tsx:97
msgid "Edit Shipment"
-msgstr ""
+msgstr "Szállítmány szerkesztése"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:299
#: src/pages/sales/SalesOrderShipmentDetail.tsx:425
#: src/tables/sales/SalesOrderShipmentTable.tsx:89
msgid "Cancel Shipment"
-msgstr ""
+msgstr "Szállítmány törlése"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:312
#: src/tables/sales/SalesOrderShipmentTable.tsx:119
#: src/tables/sales/SalesOrderShipmentTable.tsx:238
msgid "Complete Shipment"
-msgstr ""
+msgstr "Szállítmány befejezése"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:339
#: src/tables/part/PartPurchaseOrdersTable.tsx:122
@@ -8500,11 +8530,11 @@ msgstr "Függőben"
#: src/tables/sales/SalesOrderShipmentTable.tsx:168
#: src/tables/sales/SalesOrderShipmentTable.tsx:299
msgid "Checked"
-msgstr ""
+msgstr "Ellenőrizve"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:351
msgid "Not Checked"
-msgstr ""
+msgstr "Nincs ellenőrizve"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:357
#: src/tables/sales/SalesOrderShipmentTable.tsx:175
@@ -8525,115 +8555,115 @@ msgstr "Szállítmány elküldése"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:401
msgid "Shipment Actions"
-msgstr ""
+msgstr "Szállítmány műveletek"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:410
msgid "Check"
-msgstr ""
+msgstr "Ellenőrzés"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:411
msgid "Mark shipment as checked"
-msgstr ""
+msgstr "Szállítmány megjelölése ellenőrzöttként"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:417
msgid "Uncheck"
-msgstr ""
+msgstr "Ellenőrzés visszavonása"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:418
msgid "Mark shipment as unchecked"
-msgstr ""
+msgstr "Szállítmány megjelölése ellenőrizetlenként"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Szülő hely"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Alhelyek"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Helyszín típusa"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
-msgstr ""
+msgstr "Legfelső szintű készlethely"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
-msgstr ""
+msgstr "Készlethely részletek"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Tétel műveletek"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
+msgstr "Alapértelmezett alkatrészek"
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
-msgstr ""
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Készlethely szerkesztése"
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
-msgstr ""
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Tételek áthelyezése a szülő készlethelyre"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Készlethely Törlése"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Tétel műveletek"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Művelet a készlethelyen lévő készlettételekre"
#: src/pages/stock/LocationDetail.tsx:280
-msgid "Scan Stock Item"
-msgstr ""
+msgid "Locations Action"
+msgstr "Készlethelyek Művelet"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr "Művelet a készlethelyen lévő gyermek készlethelyekre"
+
+#: src/pages/stock/LocationDetail.tsx:316
+msgid "Scan Stock Item"
+msgstr "Készlet Tétel Szkennelése"
+
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
-msgstr ""
+msgstr "Készlet tétel beszkendelve a készlethelyre"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
-msgstr ""
+msgstr "Hiba a készlet tétel szkenneléskor"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
-msgstr ""
+msgstr "Készlethely Szkennelése"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
-msgstr ""
+msgstr "Készlethely beszkendelve a készlethelyre"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
-msgstr ""
+msgstr "Hiba a készlethely szkenneléskor"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
-msgstr ""
+msgstr "Készlethely Műveletek"
#: src/pages/stock/StockDetail.tsx:147
msgid "Base Part"
@@ -8657,7 +8687,7 @@ msgstr "Kiindulási alkatrész"
#: src/pages/stock/StockDetail.tsx:206
msgid "Previous serial number"
-msgstr ""
+msgstr "Előző sorozatszám"
#: src/pages/stock/StockDetail.tsx:217
#~ msgid "Delete stock item"
@@ -8665,15 +8695,15 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:228
msgid "Find serial number"
-msgstr ""
+msgstr "Sorozatszám keresése"
#: src/pages/stock/StockDetail.tsx:234
msgid "Next serial number"
-msgstr ""
+msgstr "Következő sorozatszám"
#: src/pages/stock/StockDetail.tsx:272
msgid "Allocated to Orders"
-msgstr ""
+msgstr "Rendelésekhez lefoglalva"
#: src/pages/stock/StockDetail.tsx:305
msgid "Installed In"
@@ -8685,7 +8715,7 @@ msgstr "Szülő tétel"
#: src/pages/stock/StockDetail.tsx:329
msgid "Parent stock item"
-msgstr ""
+msgstr "Szülő készlet tétel"
#: src/pages/stock/StockDetail.tsx:335
msgid "Consumed By"
@@ -8744,11 +8774,11 @@ msgstr "Tételek létrehozva"
#: src/pages/stock/StockDetail.tsx:704
msgid "Created {n} stock items"
-msgstr ""
+msgstr "{n} készlet tétel létrehozva"
#: src/pages/stock/StockDetail.tsx:721
msgid "Delete Stock Item"
-msgstr ""
+msgstr "Készlet Tétel Törlése"
#: src/pages/stock/StockDetail.tsx:762
#~ msgid "Return Stock Item"
@@ -8760,7 +8790,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:770
msgid "Serialize Stock Item"
-msgstr ""
+msgstr "Készlet Tétel Sorozatszámozása"
#: src/pages/stock/StockDetail.tsx:777
#~ msgid "Item returned to stock"
@@ -8769,19 +8799,19 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:786
#: src/tables/stock/StockItemTable.tsx:539
msgid "Stock item serialized"
-msgstr ""
+msgstr "Készlet tétel sorozatszámozva"
#: src/pages/stock/StockDetail.tsx:794
msgid "Scan Into Location"
-msgstr ""
+msgstr "Beszkendelés Készlethelyre"
#: src/pages/stock/StockDetail.tsx:852
msgid "Scan into location"
-msgstr ""
+msgstr "Beszkendelés készlethelyre"
#: src/pages/stock/StockDetail.tsx:854
msgid "Scan this item into a location"
-msgstr ""
+msgstr "Tétel beszkendelése egy készlethelyre"
#: src/pages/stock/StockDetail.tsx:866
msgid "Stock Operations"
@@ -8798,7 +8828,7 @@ msgstr "Sorozatszámozás"
#: src/pages/stock/StockDetail.tsx:872
msgid "Serialize stock"
-msgstr ""
+msgstr "Készlet sorozatszámozása"
#: src/pages/stock/StockDetail.tsx:890
#~ msgid "Return from customer"
@@ -8806,7 +8836,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:897
msgid "Stock Item Actions"
-msgstr ""
+msgstr "Készlet Tétel Műveletek"
#: src/pages/stock/StockDetail.tsx:900
#~ msgid "Transfer"
@@ -8837,7 +8867,7 @@ msgstr "Nem elérhető"
#: src/states/IconState.tsx:47
#: src/states/IconState.tsx:77
msgid "Error loading icon package from server"
-msgstr ""
+msgstr "Hiba az ikon csomag betöltésekor a szerverről"
#: src/tables/ColumnRenderers.tsx:41
#~ msgid "Part is locked"
@@ -8849,7 +8879,7 @@ msgstr "Az alkatrész nem aktív"
#: src/tables/ColumnRenderers.tsx:78
msgid "You are subscribed to notifications for this part"
-msgstr ""
+msgstr "Feliratkozott az értesítésekre ehhez az alkatrészhez"
#: src/tables/ColumnRenderers.tsx:93
#~ msgid "No location set"
@@ -8894,15 +8924,15 @@ msgstr "Van batch kódja"
#: src/tables/Filter.tsx:76
msgid "Show items which have a batch code"
-msgstr ""
+msgstr "Batch kóddal rendelkező tételek megjelenítése"
#: src/tables/Filter.tsx:84
msgid "Filter items by batch code"
-msgstr ""
+msgstr "Tételek szűrése batch kód szerint"
#: src/tables/Filter.tsx:93
msgid "Show items which are in stock"
-msgstr ""
+msgstr "Készleten lévő tételek megjelenítése"
#: src/tables/Filter.tsx:100
msgid "Is Serialized"
@@ -8910,19 +8940,20 @@ msgstr "Sorozatszámos"
#: src/tables/Filter.tsx:101
msgid "Show items which have a serial number"
-msgstr ""
+msgstr "Sorozatszámmal rendelkező tételek megjelenítése"
#: src/tables/Filter.tsx:106
#~ msgid "Show overdue orders"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Sorozatszám"
#: src/tables/Filter.tsx:109
msgid "Filter items by serial number"
-msgstr ""
+msgstr "Tételek szűrése sorozatszám szerint"
#: src/tables/Filter.tsx:117
msgid "Serial Below"
@@ -8930,7 +8961,7 @@ msgstr "Sorozatszám ez alatt"
#: src/tables/Filter.tsx:118
msgid "Show items with serial numbers less than or equal to a given value"
-msgstr ""
+msgstr "Az adott értéknél kisebb vagy egyenlő sorozatszámú tételek megjelenítése"
#: src/tables/Filter.tsx:126
msgid "Serial Above"
@@ -8938,7 +8969,7 @@ msgstr "Sorozatszám e felett"
#: src/tables/Filter.tsx:127
msgid "Show items with serial numbers greater than or equal to a given value"
-msgstr ""
+msgstr "Az adott értéknél nagyobb vagy egyenlő sorozatszámú tételek megjelenítése"
#: src/tables/Filter.tsx:136
msgid "Assigned to me"
@@ -8946,7 +8977,7 @@ msgstr "Hozzám rendelt"
#: src/tables/Filter.tsx:137
msgid "Show orders assigned to me"
-msgstr ""
+msgstr "Hozzám rendelt rendelések megjelenítése"
#: src/tables/Filter.tsx:144
#: src/tables/sales/SalesOrderAllocationTable.tsx:88
@@ -8955,11 +8986,11 @@ msgstr "Kintlévő"
#: src/tables/Filter.tsx:145
msgid "Show outstanding items"
-msgstr ""
+msgstr "Kintlévő tételek megjelenítése"
#: src/tables/Filter.tsx:153
msgid "Show overdue items"
-msgstr ""
+msgstr "Lejárt határidejű tételek megjelenítése"
#: src/tables/Filter.tsx:160
msgid "Minimum Date"
@@ -8967,7 +8998,7 @@ msgstr "Kezdő dátum"
#: src/tables/Filter.tsx:161
msgid "Show items after this date"
-msgstr ""
+msgstr "E dátum után létrehozott tételek megjelenítése"
#: src/tables/Filter.tsx:169
msgid "Maximum Date"
@@ -8975,7 +9006,7 @@ msgstr "Befejező dátum"
#: src/tables/Filter.tsx:170
msgid "Show items before this date"
-msgstr ""
+msgstr "E dátum előtt létrehozott tételek megjelenítése"
#: src/tables/Filter.tsx:178
msgid "Created Before"
@@ -8983,7 +9014,7 @@ msgstr "Ez előtt létrehozva"
#: src/tables/Filter.tsx:179
msgid "Show items created before this date"
-msgstr ""
+msgstr "E dátum előtt létrehozott tételek megjelenítése"
#: src/tables/Filter.tsx:187
msgid "Created After"
@@ -8991,7 +9022,7 @@ msgstr "Létrehozva ez után"
#: src/tables/Filter.tsx:188
msgid "Show items created after this date"
-msgstr ""
+msgstr "E dátum után létrehozott tételek megjelenítése"
#: src/tables/Filter.tsx:196
msgid "Start Date Before"
@@ -8999,23 +9030,23 @@ msgstr "Kezdeti dátum ez előtt"
#: src/tables/Filter.tsx:197
msgid "Show items with a start date before this date"
-msgstr ""
+msgstr "E dátum előtti kezdő dátumú tételek megjelenítése"
#: src/tables/Filter.tsx:205
msgid "Start Date After"
-msgstr ""
+msgstr "Kezdő Dátum Ez Után"
#: src/tables/Filter.tsx:206
msgid "Show items with a start date after this date"
-msgstr ""
+msgstr "E dátum utáni kezdő dátumú tételek megjelenítése"
#: src/tables/Filter.tsx:214
msgid "Target Date Before"
-msgstr ""
+msgstr "Céldátum Ez Előtt"
#: src/tables/Filter.tsx:215
msgid "Show items with a target date before this date"
-msgstr ""
+msgstr "E dátum előtti céldátumú tételek megjelenítése"
#: src/tables/Filter.tsx:223
msgid "Target Date After"
@@ -9023,15 +9054,15 @@ msgstr "Céldátum ez után"
#: src/tables/Filter.tsx:224
msgid "Show items with a target date after this date"
-msgstr ""
+msgstr "E dátum utáni céldátumú tételek megjelenítése"
#: src/tables/Filter.tsx:232
msgid "Completed Before"
-msgstr ""
+msgstr "Befejezve Ez Előtt"
#: src/tables/Filter.tsx:233
msgid "Show items completed before this date"
-msgstr ""
+msgstr "E dátum előtt befejezett tételek megjelenítése"
#: src/tables/Filter.tsx:241
msgid "Completed After"
@@ -9039,7 +9070,7 @@ msgstr "Befejezve ez után"
#: src/tables/Filter.tsx:242
msgid "Show items completed after this date"
-msgstr ""
+msgstr "E dátum után befejezett tételek megjelenítése"
#: src/tables/Filter.tsx:254
msgid "Has Project Code"
@@ -9047,7 +9078,7 @@ msgstr "Van projektszáma"
#: src/tables/Filter.tsx:255
msgid "Show orders with an assigned project code"
-msgstr ""
+msgstr "Hozzárendelt projektkóddal rendelkező rendelések megjelenítése"
#: src/tables/Filter.tsx:264
msgid "Include Variants"
@@ -9055,7 +9086,7 @@ msgstr "Változatok is"
#: src/tables/Filter.tsx:265
msgid "Include results for part variants"
-msgstr ""
+msgstr "Alkatrész változatok eredményeinek bevonása"
#: src/tables/Filter.tsx:275
#: src/tables/part/PartPurchaseOrdersTable.tsx:133
@@ -9078,27 +9109,27 @@ msgstr "Szűrés felhasználó szerint"
#: src/tables/Filter.tsx:348
msgid "Filter by manufacturer"
-msgstr ""
+msgstr "Szűrés gyártó szerint"
#: src/tables/Filter.tsx:361
msgid "Filter by supplier"
-msgstr ""
+msgstr "Szűrés beszállító szerint"
#: src/tables/Filter.tsx:374
msgid "Filter by user who created the order"
-msgstr ""
+msgstr "Szűrés a rendelést létrehozó felhasználó szerint"
#: src/tables/Filter.tsx:382
msgid "Filter by user who issued the order"
-msgstr ""
+msgstr "Szűrés a rendelést kiállító felhasználó szerint"
#: src/tables/Filter.tsx:390
msgid "Filter by part category"
-msgstr ""
+msgstr "Szűrés alkatrész kategória szerint"
#: src/tables/Filter.tsx:401
msgid "Filter by stock location"
-msgstr ""
+msgstr "Szűrés készlethely szerint"
#: src/tables/FilterSelectDrawer.tsx:59
msgid "Remove filter"
@@ -9112,7 +9143,7 @@ msgstr "Szűrő érték kiválasztása"
#: src/tables/FilterSelectDrawer.tsx:116
msgid "Enter filter value"
-msgstr ""
+msgstr "Szűrő érték megadása"
#: src/tables/FilterSelectDrawer.tsx:138
msgid "Select date value"
@@ -9139,14 +9170,14 @@ msgstr "Szűrő hozzáadása"
msgid "Clear Filters"
msgstr "Szűrők törlése"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Nincs találat"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
-msgstr ""
+msgstr "Hiba a táblázat beállítások betöltésekor"
#: src/tables/InvenTreeTable.tsx:250
#~ msgid "Failed to load table options"
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "A szerver hibás adattípust küldött vissza"
@@ -9176,9 +9207,9 @@ msgstr "A szerver hibás adattípust küldött vissza"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
-msgstr ""
+msgstr "Hiba a táblázat adatok betöltésekor"
#: src/tables/InvenTreeTable.tsx:594
#: src/tables/InvenTreeTable.tsx:595
@@ -9190,13 +9221,13 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Részletek megtekintése"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
-msgstr ""
+msgstr "{model} megtekintése"
#: src/tables/InvenTreeTable.tsx:712
#~ msgid "Table filters"
@@ -9212,12 +9243,12 @@ msgstr "Kiválasztott elemek törlése"
#: src/tables/InvenTreeTableHeader.tsx:108
msgid "Are you sure you want to delete the selected items?"
-msgstr ""
+msgstr "Biztosan törölni kívánja a kiválasztott tételeket?"
#: src/tables/InvenTreeTableHeader.tsx:110
#: src/tables/plugin/PluginListTable.tsx:316
msgid "This action cannot be undone"
-msgstr ""
+msgstr "Ez a művelet nem vonható vissza"
#: src/tables/InvenTreeTableHeader.tsx:121
msgid "Items deleted"
@@ -9225,16 +9256,16 @@ msgstr "Elemek törölve"
#: src/tables/InvenTreeTableHeader.tsx:126
msgid "Failed to delete items"
-msgstr ""
+msgstr "Nem sikerült törölni a tételeket"
#: src/tables/InvenTreeTableHeader.tsx:177
msgid "Custom table filters are active"
-msgstr ""
+msgstr "Egyéni táblázat szűrők aktívak"
#: src/tables/InvenTreeTableHeader.tsx:203
#: src/tables/general/BarcodeScanTable.tsx:93
msgid "Delete selected records"
-msgstr ""
+msgstr "Kiválasztott rekordok törlése"
#: src/tables/InvenTreeTableHeader.tsx:223
msgid "Refresh data"
@@ -9242,7 +9273,7 @@ msgstr "Adatok frissítése"
#: src/tables/InvenTreeTableHeader.tsx:272
msgid "Active Filters"
-msgstr ""
+msgstr "Aktív Szűrők"
#: src/tables/TableHoverCard.tsx:35
#~ msgid "item-{idx}"
@@ -9262,7 +9293,7 @@ msgstr "Alkatrész információ"
#: src/tables/bom/BomTable.tsx:121
msgid "This BOM item has not been validated"
-msgstr ""
+msgstr "Ez a BOM tétel nem lett érvényesítve"
#: src/tables/bom/BomTable.tsx:240
msgid "Substitutes"
@@ -9287,7 +9318,7 @@ msgstr "Virtuális alkatrész"
#: src/tables/build/BuildLineTable.tsx:277
#: src/tables/part/PartTable.tsx:145
msgid "External stock"
-msgstr ""
+msgstr "Külső készlet"
#: src/tables/bom/BomTable.tsx:323
#: src/tables/build/BuildLineTable.tsx:240
@@ -9344,7 +9375,7 @@ msgstr "Fogyóeszköz tétel"
#: src/tables/bom/BomTable.tsx:402
msgid "No available stock"
-msgstr ""
+msgstr "Nincs elérhető készlet"
#: src/tables/bom/BomTable.tsx:420
#: src/tables/build/BuildLineTable.tsx:214
@@ -9353,24 +9384,24 @@ msgstr "Tesztelhető elemek mutatása"
#: src/tables/bom/BomTable.tsx:425
msgid "Show trackable items"
-msgstr ""
+msgstr "Nyomon követhető tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:430
#: src/tables/build/BuildLineTable.tsx:209
msgid "Show assembled items"
-msgstr ""
+msgstr "Összeszerelt tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:435
msgid "Show virtual items"
-msgstr ""
+msgstr "Virtuális tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:440
msgid "Show items with available stock"
-msgstr ""
+msgstr "Elérhető készlettel rendelkező tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:445
msgid "Show items on order"
-msgstr ""
+msgstr "Rendelés alatt lévő tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:449
msgid "Validated"
@@ -9378,7 +9409,7 @@ msgstr "Jóváhagyva"
#: src/tables/bom/BomTable.tsx:450
msgid "Show validated items"
-msgstr ""
+msgstr "Érvényesített tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:454
#: src/tables/bom/UsedInTable.tsx:80
@@ -9388,15 +9419,15 @@ msgstr "Örökölt"
#: src/tables/bom/BomTable.tsx:455
#: src/tables/bom/UsedInTable.tsx:81
msgid "Show inherited items"
-msgstr ""
+msgstr "Örökölt tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:459
msgid "Allow Variants"
-msgstr ""
+msgstr "Változatok Engedélyezése"
#: src/tables/bom/BomTable.tsx:460
msgid "Show items which allow variant substitution"
-msgstr ""
+msgstr "Változat helyettesítést engedélyező tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:464
#: src/tables/bom/UsedInTable.tsx:85
@@ -9416,7 +9447,7 @@ msgstr "Fogyóeszköz"
#: src/tables/bom/BomTable.tsx:470
msgid "Show consumable items"
-msgstr ""
+msgstr "Fogyóeszköz tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:474
#: src/tables/part/PartTable.tsx:313
@@ -9425,11 +9456,11 @@ msgstr "Van árazás"
#: src/tables/bom/BomTable.tsx:475
msgid "Show items with pricing"
-msgstr ""
+msgstr "Árazással rendelkező tételek megjelenítése"
#: src/tables/bom/BomTable.tsx:497
msgid "Import BOM Data"
-msgstr ""
+msgstr "BOM Adatok Importálása"
#: src/tables/bom/BomTable.tsx:507
#: src/tables/bom/BomTable.tsx:631
@@ -9458,11 +9489,11 @@ msgstr "BOM sor törölve"
#: src/tables/bom/BomTable.tsx:549
msgid "BOM item validated"
-msgstr ""
+msgstr "BOM tétel érvényesítve"
#: src/tables/bom/BomTable.tsx:558
msgid "Failed to validate BOM item"
-msgstr ""
+msgstr "Nem sikerült érvényesíteni a BOM tételt"
#: src/tables/bom/BomTable.tsx:570
msgid "View BOM"
@@ -9470,7 +9501,7 @@ msgstr "Alkatrészjegyzék megtekintése"
#: src/tables/bom/BomTable.tsx:581
msgid "Validate BOM Line"
-msgstr ""
+msgstr "BOM Sor Érvényesítése"
#: src/tables/bom/BomTable.tsx:600
msgid "Edit Substitutes"
@@ -9478,25 +9509,25 @@ msgstr "Helyettesítő alkatrészek szerkesztése"
#: src/tables/bom/BomTable.tsx:625
msgid "Add BOM Items"
-msgstr ""
+msgstr "BOM Tételek Hozzáadása"
#: src/tables/bom/BomTable.tsx:633
msgid "Add a single BOM item"
-msgstr ""
+msgstr "Egyetlen BOM tétel hozzáadása"
#: src/tables/bom/BomTable.tsx:637
#: src/tables/general/ParameterTable.tsx:206
#: src/tables/part/PartTable.tsx:546
msgid "Import from File"
-msgstr ""
+msgstr "Importálás Fájlból"
#: src/tables/bom/BomTable.tsx:639
msgid "Import BOM items from a file"
-msgstr ""
+msgstr "BOM tételek importálása fájlból"
#: src/tables/bom/BomTable.tsx:662
msgid "Bill of materials cannot be edited, as the part is locked"
-msgstr ""
+msgstr "Az anyagjegyzék nem szerkeszthető mivel az alkatrész zárolva van"
#: src/tables/bom/UsedInTable.tsx:34
#: src/tables/build/BuildLineTable.tsx:208
@@ -9509,7 +9540,7 @@ msgstr "Gyártmány"
#: src/tables/bom/UsedInTable.tsx:91
msgid "Show active assemblies"
-msgstr ""
+msgstr "Aktív összeállítások megjelenítése"
#: src/tables/bom/UsedInTable.tsx:95
#: src/tables/part/PartTable.tsx:239
@@ -9523,11 +9554,11 @@ msgstr "Nyomonkövethető gyártmányok mutatása"
#: src/tables/build/BuildAllocatedStockTable.tsx:64
msgid "Allocated to Output"
-msgstr ""
+msgstr "Kimenethez lefoglalva"
#: src/tables/build/BuildAllocatedStockTable.tsx:65
msgid "Show items allocated to a build output"
-msgstr ""
+msgstr "Gyártási kimenethez lefoglalt tételek megjelenítése"
#: src/tables/build/BuildAllocatedStockTable.tsx:73
#: src/tables/build/BuildOrderTable.tsx:197
@@ -9564,7 +9595,7 @@ msgstr "Készlet foglalás szerkesztése"
#: src/tables/build/BuildLineTable.tsx:664
#: src/tables/sales/SalesOrderAllocationTable.tsx:218
msgid "Remove Allocated Stock"
-msgstr ""
+msgstr "Lefoglalt készlet eltávolítása"
#: src/tables/build/BuildAllocatedStockTable.tsx:180
#: src/tables/build/BuildLineTable.tsx:663
@@ -9575,7 +9606,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:669
#: src/tables/sales/SalesOrderAllocationTable.tsx:221
msgid "Are you sure you want to remove this allocated stock from the order?"
-msgstr ""
+msgstr "Biztosan el kívánja távolítani ezt a lefoglalt készletet a rendelésből?"
#: src/tables/build/BuildAllocatedStockTable.tsx:242
msgid "Consume"
@@ -9585,7 +9616,7 @@ msgstr "Felhasznál"
#: src/tables/build/BuildLineTable.tsx:112
#: src/tables/sales/SalesOrderAllocationTable.tsx:248
msgid "Remove allocated stock"
-msgstr ""
+msgstr "Lefoglalt készlet eltávolítása"
#: src/tables/build/BuildLineTable.tsx:59
#~ msgid "Show lines with available stock"
@@ -9597,11 +9628,11 @@ msgstr "Készlet tétel megtekintése"
#: src/tables/build/BuildLineTable.tsx:184
msgid "Show fully allocated lines"
-msgstr ""
+msgstr "Teljesen lefoglalt sorok megjelenítése"
#: src/tables/build/BuildLineTable.tsx:189
msgid "Show fully consumed lines"
-msgstr ""
+msgstr "Teljesen felhasznált sorok megjelenítése"
#: src/tables/build/BuildLineTable.tsx:189
#~ msgid "Show allocated lines"
@@ -9609,7 +9640,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:194
msgid "Show items with sufficient available stock"
-msgstr ""
+msgstr "Elegendő elérhető készlettel rendelkező tételek megjelenítése"
#: src/tables/build/BuildLineTable.tsx:199
msgid "Show consumable lines"
@@ -9635,7 +9666,7 @@ msgstr "Követett tételek mutatása"
#: src/tables/build/BuildLineTable.tsx:224
msgid "Show items with stock on order"
-msgstr ""
+msgstr "Rendelésben lévő készlettel rendelkező tételek megjelenítése"
#: src/tables/build/BuildLineTable.tsx:259
#: src/tables/sales/SalesOrderLineItemTable.tsx:172
@@ -9644,7 +9675,7 @@ msgstr "Gyártásban"
#: src/tables/build/BuildLineTable.tsx:287
msgid "Insufficient stock"
-msgstr ""
+msgstr "Elégtelen készlet"
#: src/tables/build/BuildLineTable.tsx:303
#: src/tables/sales/SalesOrderLineItemTable.tsx:160
@@ -9654,7 +9685,7 @@ msgstr "Nincs elérhető készlet"
#: src/tables/build/BuildLineTable.tsx:376
msgid "Gets Inherited"
-msgstr ""
+msgstr "Örökölt"
#: src/tables/build/BuildLineTable.tsx:389
msgid "Unit Quantity"
@@ -9666,25 +9697,25 @@ msgstr "Beállítási mennyiség"
#: src/tables/build/BuildLineTable.tsx:425
msgid "Attrition"
-msgstr ""
+msgstr "Selejt"
#: src/tables/build/BuildLineTable.tsx:433
msgid "Rounding Multiple"
-msgstr ""
+msgstr "Kerekítési többszörös"
#: src/tables/build/BuildLineTable.tsx:442
msgid "BOM Information"
-msgstr ""
+msgstr "Anyagjegyzék információ"
#: src/tables/build/BuildLineTable.tsx:516
#: src/tables/part/PartBuildAllocationsTable.tsx:102
msgid "Fully allocated"
-msgstr ""
+msgstr "Teljesen lefoglalva"
#: src/tables/build/BuildLineTable.tsx:564
#: src/tables/sales/SalesOrderLineItemTable.tsx:311
msgid "Create Build Order"
-msgstr ""
+msgstr "Gyártási rendelés létrehozása"
#: src/tables/build/BuildLineTable.tsx:593
msgid "Auto allocation in progress"
@@ -9761,36 +9792,36 @@ msgstr "Alkatrész megtekintése"
#: src/tables/sales/ReturnOrderTable.tsx:79
#: src/tables/sales/SalesOrderTable.tsx:80
msgid "Has Target Date"
-msgstr ""
+msgstr "Cél dátummal rendelkezik"
#: src/tables/build/BuildOrderTable.tsx:167
#: src/tables/purchasing/PurchaseOrderTable.tsx:84
#: src/tables/sales/ReturnOrderTable.tsx:80
#: src/tables/sales/SalesOrderTable.tsx:81
msgid "Show orders with a target date"
-msgstr ""
+msgstr "Cél dátummal rendelkező rendelések megjelenítése"
#: src/tables/build/BuildOrderTable.tsx:172
#: src/tables/purchasing/PurchaseOrderTable.tsx:89
#: src/tables/sales/ReturnOrderTable.tsx:85
#: src/tables/sales/SalesOrderTable.tsx:86
msgid "Has Start Date"
-msgstr ""
+msgstr "Kezdő dátummal rendelkezik"
#: src/tables/build/BuildOrderTable.tsx:173
#: src/tables/purchasing/PurchaseOrderTable.tsx:90
#: src/tables/sales/ReturnOrderTable.tsx:86
#: src/tables/sales/SalesOrderTable.tsx:87
msgid "Show orders with a start date"
-msgstr ""
+msgstr "Kezdő dátummal rendelkező rendelések megjelenítése"
#: src/tables/build/BuildOrderTable.tsx:179
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
-msgstr ""
+msgstr "Gyártási kimenet készlet foglalás"
#: src/tables/build/BuildOutputTable.tsx:161
#~ msgid "Delete build output"
@@ -9803,7 +9834,7 @@ msgstr "Gyártási kimenet hozzáadása"
#: src/tables/build/BuildOutputTable.tsx:293
msgid "Build output created"
-msgstr ""
+msgstr "Gyártási kimenet létrehozva"
#: src/tables/build/BuildOutputTable.tsx:304
#~ msgid "Edit build output"
@@ -9812,11 +9843,11 @@ msgstr ""
#: src/tables/build/BuildOutputTable.tsx:346
#: src/tables/build/BuildOutputTable.tsx:543
msgid "Edit Build Output"
-msgstr ""
+msgstr "Gyártási kimenet szerkesztése"
#: src/tables/build/BuildOutputTable.tsx:362
msgid "This action will deallocate all stock from the selected build output"
-msgstr ""
+msgstr "Ez a művelet felszabadít minden készletet a kiválasztott gyártási kimenetből"
#: src/tables/build/BuildOutputTable.tsx:387
msgid "Serialize Build Output"
@@ -9826,7 +9857,7 @@ msgstr "Gyártási kimenet sorozatszámozása"
#: src/tables/part/PartTestResultTable.tsx:318
#: src/tables/stock/StockItemTable.tsx:328
msgid "Filter by stock status"
-msgstr ""
+msgstr "Szűrés készlet státusz szerint"
#: src/tables/build/BuildOutputTable.tsx:442
msgid "Complete selected outputs"
@@ -9862,7 +9893,7 @@ msgstr "Készlet felszabadítása a gyártási kimenetből"
#: src/tables/build/BuildOutputTable.tsx:523
msgid "Serialize build output"
-msgstr ""
+msgstr "Gyártási kimenet sorozatszámozása"
#: src/tables/build/BuildOutputTable.tsx:534
msgid "Complete build output"
@@ -9882,7 +9913,7 @@ msgstr "Gyártási kimenet visszavonása"
#: src/tables/build/BuildOutputTable.tsx:610
msgid "Allocated Lines"
-msgstr ""
+msgstr "Lefoglalt sorok"
#: src/tables/build/BuildOutputTable.tsx:625
msgid "Required Tests"
@@ -9894,7 +9925,7 @@ msgstr "Külső gyártás"
#: src/tables/build/BuildOutputTable.tsx:702
msgid "This build order is fulfilled by an external purchase order"
-msgstr ""
+msgstr "Ez a gyártási rendelés külső beszerzési rendeléssel teljesül"
#: src/tables/company/AddressTable.tsx:122
#: src/tables/company/AddressTable.tsx:187
@@ -9960,7 +9991,7 @@ msgstr "Kapcsolat hozzáadása"
#: src/tables/general/AttachmentTable.tsx:108
msgid "Uploading file {filename}"
-msgstr ""
+msgstr "{filename} fájl feltöltése"
#: src/tables/general/AttachmentTable.tsx:139
#~ msgid "File uploaded"
@@ -9981,7 +10012,7 @@ msgstr "Fájl feltöltve"
#: src/tables/general/AttachmentTable.tsx:186
msgid "File {name} uploaded successfully"
-msgstr ""
+msgstr "{name} fájl sikeresen feltöltve"
#: src/tables/general/AttachmentTable.tsx:202
msgid "File could not be uploaded"
@@ -9989,7 +10020,7 @@ msgstr "A fájlt nem sikerült feltölteni"
#: src/tables/general/AttachmentTable.tsx:253
msgid "Upload Attachment"
-msgstr ""
+msgstr "Melléklet feltöltése"
#: src/tables/general/AttachmentTable.tsx:254
#~ msgid "Upload attachment"
@@ -9997,7 +10028,7 @@ msgstr ""
#: src/tables/general/AttachmentTable.tsx:263
msgid "Edit Attachment"
-msgstr ""
+msgstr "Melléklet szerkesztése"
#: src/tables/general/AttachmentTable.tsx:277
msgid "Delete Attachment"
@@ -10009,7 +10040,7 @@ msgstr "Ez egy hivatkozás"
#: src/tables/general/AttachmentTable.tsx:288
msgid "Show link attachments"
-msgstr ""
+msgstr "Hivatkozás mellékletek megjelenítése"
#: src/tables/general/AttachmentTable.tsx:292
msgid "Is File"
@@ -10017,7 +10048,7 @@ msgstr "Ez egy állomány"
#: src/tables/general/AttachmentTable.tsx:293
msgid "Show file attachments"
-msgstr ""
+msgstr "Fájl mellékletek megjelenítése"
#: src/tables/general/AttachmentTable.tsx:302
msgid "Add attachment"
@@ -10033,7 +10064,7 @@ msgstr "Nem találhatók mellékletek"
#: src/tables/general/AttachmentTable.tsx:400
msgid "Drag attachment file here to upload"
-msgstr ""
+msgstr "Húzza ide a melléklet fájlt a feltöltéshez"
#: src/tables/general/BarcodeScanTable.tsx:35
msgid "Item"
@@ -10049,7 +10080,7 @@ msgstr "Tétel megtekintése"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Sortétel hozzáadása"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Sortétel szerkesztése"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10073,7 +10104,7 @@ msgstr "Tétel törlése"
#: src/tables/general/ExtraLineItemTable.tsx:155
msgid "Add Extra Line Item"
-msgstr ""
+msgstr "Extra sortétel hozzáadása"
#: src/tables/general/ParameterTable.tsx:88
msgid "Internal Units"
@@ -10086,15 +10117,15 @@ msgstr "Frissítette"
#: src/tables/general/ParameterTable.tsx:118
msgid "Show parameters for enabled templates"
-msgstr ""
+msgstr "Engedélyezett sablonok paramétereinek megjelenítése"
#: src/tables/general/ParameterTable.tsx:124
msgid "Filter by user who last updated the parameter"
-msgstr ""
+msgstr "Szűrés azon felhasználó szerint, aki utoljára frissítette a paramétert"
#: src/tables/general/ParameterTable.tsx:154
msgid "Import Parameters"
-msgstr ""
+msgstr "Paraméterek importálása"
#: src/tables/general/ParameterTable.tsx:164
#: src/tables/general/ParametricDataTable.tsx:261
@@ -10115,19 +10146,19 @@ msgstr "Paraméter törlése"
#: src/tables/general/ParameterTable.tsx:191
msgid "Add Parameters"
-msgstr ""
+msgstr "Paraméterek hozzáadása"
#: src/tables/general/ParameterTable.tsx:197
msgid "Create Parameter"
-msgstr ""
+msgstr "Paraméter létrehozása"
#: src/tables/general/ParameterTable.tsx:199
msgid "Create a new parameter"
-msgstr ""
+msgstr "Új paraméter létrehozása"
#: src/tables/general/ParameterTable.tsx:208
msgid "Import parameters from a file"
-msgstr ""
+msgstr "Paraméterek importálása fájlból"
#: src/tables/general/ParameterTemplateTable.tsx:48
#: src/tables/general/ParameterTemplateTable.tsx:197
@@ -10136,7 +10167,7 @@ msgstr "Paraméter sablon létrehozás"
#: src/tables/general/ParameterTemplateTable.tsx:64
msgid "Duplicate Parameter Template"
-msgstr ""
+msgstr "Paraméter sablon másolása"
#: src/tables/general/ParameterTemplateTable.tsx:78
msgid "Delete Parameter Template"
@@ -10152,7 +10183,7 @@ msgstr "Jelölőnégyzet"
#: src/tables/general/ParameterTemplateTable.tsx:139
msgid "Show checkbox templates"
-msgstr ""
+msgstr "Jelölőnégyzet sablonok megjelenítése"
#: src/tables/general/ParameterTemplateTable.tsx:143
msgid "Has choices"
@@ -10160,7 +10191,7 @@ msgstr "Vannak lehetőségei"
#: src/tables/general/ParameterTemplateTable.tsx:144
msgid "Show templates with choices"
-msgstr ""
+msgstr "Választási lehetőségekkel rendelkező sablonok megjelenítése"
#: src/tables/general/ParameterTemplateTable.tsx:148
#: src/tables/part/PartTable.tsx:245
@@ -10169,11 +10200,11 @@ msgstr "Van mértékegysége"
#: src/tables/general/ParameterTemplateTable.tsx:149
msgid "Show templates with units"
-msgstr ""
+msgstr "Mértékegységgel rendelkező sablonok megjelenítése"
#: src/tables/general/ParameterTemplateTable.tsx:154
msgid "Show enabled templates"
-msgstr ""
+msgstr "Engedélyezett sablonok megjelenítése"
#: src/tables/general/ParameterTemplateTable.tsx:158
#: src/tables/settings/ImportSessionTable.tsx:111
@@ -10183,7 +10214,7 @@ msgstr "Modell típusa"
#: src/tables/general/ParameterTemplateTable.tsx:159
msgid "Filter by model type"
-msgstr ""
+msgstr "Szűrés modell típus szerint"
#: src/tables/general/ParametricDataTable.tsx:79
msgid "Click to edit"
@@ -10200,7 +10231,7 @@ msgstr "Hamis"
#: src/tables/general/ParametricDataTableFilters.tsx:47
#: src/tables/general/ParametricDataTableFilters.tsx:80
msgid "Select a choice"
-msgstr ""
+msgstr "Válasszon egy lehetőséget"
#: src/tables/general/ParametricDataTableFilters.tsx:100
msgid "Enter a value"
@@ -10208,7 +10239,7 @@ msgstr "Írj be egy értéket"
#: src/tables/machine/MachineListTable.tsx:133
msgid "Machine restarted"
-msgstr ""
+msgstr "Gép újraindítva"
#: src/tables/machine/MachineListTable.tsx:235
#: src/tables/machine/MachineListTable.tsx:297
@@ -10223,17 +10254,17 @@ msgstr "Berendezés módosítása"
#: src/tables/machine/MachineListTable.tsx:249
#: src/tables/machine/MachineListTable.tsx:301
msgid "Delete machine"
-msgstr ""
+msgstr "Gép törlése"
#: src/tables/machine/MachineListTable.tsx:250
#: src/tables/machine/MachineListTable.tsx:692
msgid "Machine successfully deleted."
-msgstr ""
+msgstr "Gép sikeresen törölve."
#: src/tables/machine/MachineListTable.tsx:255
#: src/tables/machine/MachineListTable.tsx:697
msgid "Are you sure you want to remove this machine?"
-msgstr ""
+msgstr "Biztos, hogy el szeretné távolítani ezt a gépet?"
#: src/tables/machine/MachineListTable.tsx:285
msgid "Machine"
@@ -10250,7 +10281,7 @@ msgstr "Újraindítás szükséges"
#: src/tables/machine/MachineListTable.tsx:294
msgid "Machine Actions"
-msgstr ""
+msgstr "Gép műveletek"
#: src/tables/machine/MachineListTable.tsx:306
msgid "Restart"
@@ -10262,7 +10293,7 @@ msgstr "Berendezés újraindítása"
#: src/tables/machine/MachineListTable.tsx:310
msgid "manual restart required"
-msgstr ""
+msgstr "manuális újraindítás szükséges"
#: src/tables/machine/MachineListTable.tsx:315
#~ msgid "Machine Information"
@@ -10270,7 +10301,7 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:343
msgid "General"
-msgstr ""
+msgstr "Általános"
#: src/tables/machine/MachineListTable.tsx:353
#: src/tables/machine/MachineListTable.tsx:804
@@ -10288,11 +10319,11 @@ msgstr "Inicializálva"
#: src/tables/machine/MachineListTable.tsx:410
#: src/tables/machine/MachineTypeTable.tsx:305
msgid "No errors reported"
-msgstr ""
+msgstr "Nincs jelentett hiba"
#: src/tables/machine/MachineListTable.tsx:431
msgid "Properties"
-msgstr ""
+msgstr "Tulajdonságok"
#: src/tables/machine/MachineListTable.tsx:494
#~ msgid "Create machine"
@@ -10300,7 +10331,7 @@ msgstr ""
#: src/tables/machine/MachineListTable.tsx:521
msgid "Driver Settings"
-msgstr ""
+msgstr "Meghajtó beállítások"
#: src/tables/machine/MachineListTable.tsx:561
#~ msgid "Machine detail"
@@ -10313,7 +10344,7 @@ msgstr "Berendezés hozzáadása"
#: src/tables/machine/MachineListTable.tsx:691
#: src/tables/machine/MachineListTable.tsx:736
msgid "Delete Machine"
-msgstr ""
+msgstr "Gép törlése"
#: src/tables/machine/MachineListTable.tsx:704
msgid "Edit Machine"
@@ -10321,7 +10352,7 @@ msgstr "Berendezés módosítása"
#: src/tables/machine/MachineListTable.tsx:718
msgid "Restart Machine"
-msgstr ""
+msgstr "Gép újraindítása"
#: src/tables/machine/MachineListTable.tsx:749
msgid "Add machine"
@@ -10353,11 +10384,11 @@ msgstr "Nem található"
#: src/tables/machine/MachineTypeTable.tsx:129
msgid "Machine type not found."
-msgstr ""
+msgstr "Gép típus nem található."
#: src/tables/machine/MachineTypeTable.tsx:139
msgid "Machine Type Information"
-msgstr ""
+msgstr "Gép típus információ"
#: src/tables/machine/MachineTypeTable.tsx:148
#~ msgid "Available drivers"
@@ -10371,24 +10402,24 @@ msgstr "Slug"
#: src/tables/machine/MachineTypeTable.tsx:165
#: src/tables/machine/MachineTypeTable.tsx:274
msgid "Provider plugin"
-msgstr ""
+msgstr "Szolgáltató bővítmény"
#: src/tables/machine/MachineTypeTable.tsx:177
#: src/tables/machine/MachineTypeTable.tsx:286
msgid "Provider file"
-msgstr ""
+msgstr "Szolgáltató fájl"
#: src/tables/machine/MachineTypeTable.tsx:192
msgid "Available Drivers"
-msgstr ""
+msgstr "Elérhető meghajtók"
#: src/tables/machine/MachineTypeTable.tsx:232
msgid "Machine driver not found."
-msgstr ""
+msgstr "Gép meghajtó nem található."
#: src/tables/machine/MachineTypeTable.tsx:240
msgid "Machine driver information"
-msgstr ""
+msgstr "Gép meghajtó információ"
#: src/tables/machine/MachineTypeTable.tsx:260
msgid "Machine type"
@@ -10408,11 +10439,11 @@ msgstr "Beépülő típusa"
#: src/tables/machine/MachineTypeTable.tsx:369
msgid "Machine Type Detail"
-msgstr ""
+msgstr "Gép típus részletek"
#: src/tables/machine/MachineTypeTable.tsx:379
msgid "Machine Driver Detail"
-msgstr ""
+msgstr "Gép meghajtó részletek"
#: src/tables/notifications/NotificationTable.tsx:26
msgid "Age"
@@ -10430,15 +10461,15 @@ msgstr "Üzenet"
#: src/tables/part/ParametricPartTable.tsx:20
msgid "Show active parts"
-msgstr ""
+msgstr "Aktív alkatrészek megjelenítése"
#: src/tables/part/ParametricPartTable.tsx:25
msgid "Show locked parts"
-msgstr ""
+msgstr "Zárolt alkatrészek megjelenítése"
#: src/tables/part/ParametricPartTable.tsx:30
msgid "Show assembly parts"
-msgstr ""
+msgstr "Összeszerelési alkatrészek megjelenítése"
#: src/tables/part/ParametricPartTable.tsx:82
#~ msgid "Edit parameter"
@@ -10456,7 +10487,7 @@ msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:64
msgid "Assembly IPN"
-msgstr ""
+msgstr "Összeszerelés IPN"
#: src/tables/part/PartBuildAllocationsTable.tsx:73
msgid "Part IPN"
@@ -10467,13 +10498,13 @@ msgid "Required Stock"
msgstr "Szükséges készlet"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
-msgstr ""
+msgstr "Gyártási megrendelés megtekintése"
#: src/tables/part/PartCategoryTable.tsx:51
msgid "You are subscribed to notifications for this category"
-msgstr ""
+msgstr "Feliratkozott az értesítésekre ehhez a kategóriához"
#: src/tables/part/PartCategoryTable.tsx:84
#: src/tables/part/PartTable.tsx:221
@@ -10482,15 +10513,15 @@ msgstr "Alkategóriákkal együtt"
#: src/tables/part/PartCategoryTable.tsx:85
msgid "Include subcategories in results"
-msgstr ""
+msgstr "Alkategóriák belefoglalása az eredményekbe"
#: src/tables/part/PartCategoryTable.tsx:90
msgid "Show structural categories"
-msgstr ""
+msgstr "Strukturális kategóriák megjelenítése"
#: src/tables/part/PartCategoryTable.tsx:95
msgid "Show categories to which the user is subscribed"
-msgstr ""
+msgstr "Kategóriák megjelenítése, amelyekre a felhasználó feliratkozott"
#: src/tables/part/PartCategoryTable.tsx:104
msgid "New Part Category"
@@ -10498,7 +10529,7 @@ msgstr "Új alkatrész kategória"
#: src/tables/part/PartCategoryTable.tsx:130
msgid "Set Parent Category"
-msgstr ""
+msgstr "Szülő kategória beállítása"
#: src/tables/part/PartCategoryTable.tsx:148
#: src/tables/stock/StockLocationTable.tsx:147
@@ -10507,7 +10538,7 @@ msgstr "Szülő kapcsolat beállítása"
#: src/tables/part/PartCategoryTable.tsx:150
msgid "Set parent category for the selected items"
-msgstr ""
+msgstr "Szülő kategória beállítása a kiválasztott tételekhez"
#: src/tables/part/PartCategoryTable.tsx:161
msgid "Add Part Category"
@@ -10516,15 +10547,15 @@ msgstr "Alkatrész kategória hozzáadása"
#: src/tables/part/PartCategoryTemplateTable.tsx:49
#: src/tables/part/PartCategoryTemplateTable.tsx:143
msgid "Add Category Parameter"
-msgstr ""
+msgstr "Kategória paraméter hozzáadása"
#: src/tables/part/PartCategoryTemplateTable.tsx:57
msgid "Edit Category Parameter"
-msgstr ""
+msgstr "Kategória paraméter szerkesztése"
#: src/tables/part/PartCategoryTemplateTable.tsx:65
msgid "Delete Category Parameter"
-msgstr ""
+msgstr "Kategória paraméter törlése"
#: src/tables/part/PartCategoryTemplateTable.tsx:93
#~ msgid "[{0}]"
@@ -10554,16 +10585,16 @@ msgstr "Teljes mennyiség"
#: src/tables/part/PartPurchaseOrdersTable.tsx:123
msgid "Show pending orders"
-msgstr ""
+msgstr "Függőben lévő megrendelések megjelenítése"
#: src/tables/part/PartPurchaseOrdersTable.tsx:128
msgid "Show received items"
-msgstr ""
+msgstr "Bevételezett tételek megjelenítése"
#: src/tables/part/PartSalesAllocationsTable.tsx:90
#: src/tables/sales/SalesOrderShipmentTable.tsx:263
msgid "View Sales Order"
-msgstr ""
+msgstr "Értékesítési rendelés megtekintése"
#: src/tables/part/PartTable.tsx:99
msgid "Minimum stock"
@@ -10575,7 +10606,7 @@ msgstr "Szűrés aktív státusz szerint"
#: src/tables/part/PartTable.tsx:204
msgid "Filter by part locked status"
-msgstr ""
+msgstr "Szűrés zárolás státusz szerint"
#: src/tables/part/PartTable.tsx:210
msgid "Filter by assembly attribute"
@@ -10587,7 +10618,7 @@ msgstr "Alkatrészjegyzék ellenőrzött"
#: src/tables/part/PartTable.tsx:216
msgid "Filter by parts with a valid BOM"
-msgstr ""
+msgstr "Szűrés érvényes alkatrészjegyzékkel rendelkező alkatrészekre"
#: src/tables/part/PartTable.tsx:222
msgid "Include parts in subcategories"
@@ -10599,7 +10630,7 @@ msgstr "Szűrés összetevő tulajdonság szerint"
#: src/tables/part/PartTable.tsx:234
msgid "Filter by testable attribute"
-msgstr ""
+msgstr "Szűrés tesztelhető tulajdonság szerint"
#: src/tables/part/PartTable.tsx:240
msgid "Filter by trackable attribute"
@@ -10659,7 +10690,7 @@ msgstr "Sablon-e"
#: src/tables/part/PartTable.tsx:292
msgid "Filter by parts which are templates"
-msgstr ""
+msgstr "Szűrés sablonokra"
#: src/tables/part/PartTable.tsx:297
msgid "Is Variant"
@@ -10667,7 +10698,7 @@ msgstr "Változat-e"
#: src/tables/part/PartTable.tsx:298
msgid "Filter by parts which are variants"
-msgstr ""
+msgstr "Szűrés változatokra"
#: src/tables/part/PartTable.tsx:303
msgid "Is Revision"
@@ -10675,7 +10706,7 @@ msgstr "Változat-e"
#: src/tables/part/PartTable.tsx:304
msgid "Filter by parts which are revisions"
-msgstr ""
+msgstr "Szűrés revíziókra"
#: src/tables/part/PartTable.tsx:308
msgid "Has Revisions"
@@ -10683,15 +10714,15 @@ msgstr "Vannak változatai"
#: src/tables/part/PartTable.tsx:309
msgid "Filter by parts which have revisions"
-msgstr ""
+msgstr "Szűrés revíziókkal rendelkező alkatrészekre"
#: src/tables/part/PartTable.tsx:314
msgid "Filter by parts which have pricing information"
-msgstr ""
+msgstr "Szűrés árazási információval rendelkező alkatrészekre"
#: src/tables/part/PartTable.tsx:320
msgid "Filter by parts which have available stock"
-msgstr ""
+msgstr "Szűrés elérhető készlettel rendelkező alkatrészekre"
#: src/tables/part/PartTable.tsx:322
#~ msgid "Has Stocktake"
@@ -10703,11 +10734,11 @@ msgstr ""
#: src/tables/part/PartTable.tsx:326
msgid "Filter by parts to which the user is subscribed"
-msgstr ""
+msgstr "Szűrés feliratkozott alkatrészekre"
#: src/tables/part/PartTable.tsx:377
msgid "Import Parts"
-msgstr ""
+msgstr "Alkatrészek importálása"
#: src/tables/part/PartTable.tsx:464
#: src/tables/part/PartTable.tsx:512
@@ -10716,35 +10747,35 @@ msgstr "Kategória beállítása"
#: src/tables/part/PartTable.tsx:514
msgid "Set category for selected parts"
-msgstr ""
+msgstr "Kategória beállítása a kiválasztott alkatrészekhez"
#: src/tables/part/PartTable.tsx:524
msgid "Order selected parts"
-msgstr ""
+msgstr "Kiválasztott alkatrészek rendelése"
#: src/tables/part/PartTable.tsx:534
msgid "Add Parts"
-msgstr ""
+msgstr "Alkatrészek hozzáadása"
#: src/tables/part/PartTable.tsx:540
msgid "Create Part"
-msgstr ""
+msgstr "Alkatrész létrehozása"
#: src/tables/part/PartTable.tsx:542
msgid "Create a new part"
-msgstr ""
+msgstr "Új alkatrész létrehozása"
#: src/tables/part/PartTable.tsx:548
msgid "Import parts from a file"
-msgstr ""
+msgstr "Alkatrészek importálása fájlból"
#: src/tables/part/PartTable.tsx:553
msgid "Import from Supplier"
-msgstr ""
+msgstr "Importálás beszállítótól"
#: src/tables/part/PartTable.tsx:555
msgid "Import parts from a supplier plugin"
-msgstr ""
+msgstr "Alkatrészek importálása beszállítói bővítményből"
#: src/tables/part/PartTestResultTable.tsx:103
#: src/tables/part/PartTestResultTable.tsx:181
@@ -10763,11 +10794,11 @@ msgstr "Teszt eredmény feltöltve"
#: src/tables/part/PartTestResultTable.tsx:142
msgid "Add Test Results"
-msgstr ""
+msgstr "Teszt eredmények hozzáadása"
#: src/tables/part/PartTestResultTable.tsx:152
msgid "Test results added"
-msgstr ""
+msgstr "Teszt eredmények feltöltve"
#: src/tables/part/PartTestResultTable.tsx:180
#: src/tables/stock/StockItemTestResultTable.tsx:197
@@ -10776,15 +10807,15 @@ msgstr "Nincs eredmény"
#: src/tables/part/PartTestResultTable.tsx:306
msgid "Show build outputs currently in production"
-msgstr ""
+msgstr "Jelenleg gyártásban lévő gyártási kimenetek megjelenítése"
#: src/tables/part/PartTestTemplateTable.tsx:56
msgid "Test is defined for a parent template part"
-msgstr ""
+msgstr "A teszt egy szülő sablon alkatrészhez van definiálva"
#: src/tables/part/PartTestTemplateTable.tsx:70
msgid "Template Details"
-msgstr ""
+msgstr "Sablon részletei"
#: src/tables/part/PartTestTemplateTable.tsx:80
msgid "Results"
@@ -10808,7 +10839,7 @@ msgstr "Kötelező adatos tesztek megjelenítése"
#: src/tables/part/PartTestTemplateTable.tsx:127
msgid "Requires Attachment"
-msgstr ""
+msgstr "Melléklet kötelező"
#: src/tables/part/PartTestTemplateTable.tsx:128
msgid "Show tests that require an attachment"
@@ -10857,7 +10888,7 @@ msgstr "Szülő alkatérsz megtekintése"
#: src/tables/part/PartTestTemplateTable.tsx:263
msgid "Part templates cannot be edited, as the part is locked"
-msgstr ""
+msgstr "Az alkatrész sablonok nem szerkeszthetők, mivel az alkatrész zárolva van"
#: src/tables/part/PartThumbTable.tsx:222
msgid "Select"
@@ -10903,15 +10934,15 @@ msgstr "Kapcsolódó alkatrész szerkesztése"
#: src/tables/part/SelectionListTable.tsx:64
#: src/tables/part/SelectionListTable.tsx:115
msgid "Add Selection List"
-msgstr ""
+msgstr "Kiválasztási lista hozzáadása"
#: src/tables/part/SelectionListTable.tsx:76
msgid "Edit Selection List"
-msgstr ""
+msgstr "Kiválasztási lista szerkesztése"
#: src/tables/part/SelectionListTable.tsx:84
msgid "Delete Selection List"
-msgstr ""
+msgstr "Kiválasztási lista törlése"
#: src/tables/plugin/PluginErrorTable.tsx:29
msgid "Stage"
@@ -10983,11 +11014,11 @@ msgstr "Plugin kikapcsolásának megerősítése"
#: src/tables/plugin/PluginListTable.tsx:159
msgid "The selected plugin will be activated"
-msgstr ""
+msgstr "A kiválasztott bővítmény aktiválva lesz"
#: src/tables/plugin/PluginListTable.tsx:160
msgid "The selected plugin will be deactivated"
-msgstr ""
+msgstr "A kiválasztott bővítmény deaktiválva lesz"
#: src/tables/plugin/PluginListTable.tsx:163
#~ msgid "Package information"
@@ -11003,7 +11034,7 @@ msgstr "Bekapcsolás"
#: src/tables/plugin/PluginListTable.tsx:193
msgid "Activate selected plugin"
-msgstr ""
+msgstr "Kiválasztott bővítmény aktiválása"
#: src/tables/plugin/PluginListTable.tsx:197
#~ msgid "Plugin settings"
@@ -11011,7 +11042,7 @@ msgstr ""
#: src/tables/plugin/PluginListTable.tsx:205
msgid "Update selected plugin"
-msgstr ""
+msgstr "Kiválasztott bővítmény frissítése"
#: src/tables/plugin/PluginListTable.tsx:224
#: src/tables/stock/InstalledItemsTable.tsx:107
@@ -11020,11 +11051,11 @@ msgstr "Eltávolítás"
#: src/tables/plugin/PluginListTable.tsx:225
msgid "Uninstall selected plugin"
-msgstr ""
+msgstr "Kiválasztott bővítmény eltávolítása"
#: src/tables/plugin/PluginListTable.tsx:244
msgid "Delete selected plugin configuration"
-msgstr ""
+msgstr "Kiválasztott bővítmény konfiguráció törlése"
#: src/tables/plugin/PluginListTable.tsx:260
msgid "Activate Plugin"
@@ -11032,11 +11063,11 @@ msgstr "Plugin aktiválása"
#: src/tables/plugin/PluginListTable.tsx:267
msgid "The plugin was activated"
-msgstr ""
+msgstr "A bővítmény aktiválva lett"
#: src/tables/plugin/PluginListTable.tsx:268
msgid "The plugin was deactivated"
-msgstr ""
+msgstr "A bővítmény deaktiválva lett"
#: src/tables/plugin/PluginListTable.tsx:280
#~ msgid "Install plugin"
@@ -11167,17 +11198,17 @@ msgstr "Aktív alkatrész"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:45
#: src/tables/purchasing/ManufacturerPartTable.tsx:135
msgid "Show manufacturer parts for active internal parts."
-msgstr ""
+msgstr "Aktív belső alkatrészek gyártói alkatrészeinek megjelenítése."
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:50
#: src/tables/purchasing/ManufacturerPartTable.tsx:140
msgid "Active Manufacturer"
-msgstr ""
+msgstr "Aktív gyártó"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:51
#: src/tables/purchasing/ManufacturerPartTable.tsx:142
msgid "Show manufacturer parts for active manufacturers."
-msgstr ""
+msgstr "Aktív gyártók gyártói alkatrészeinek megjelenítése."
#: src/tables/purchasing/ManufacturerPartTable.tsx:63
#~ msgid "Create Manufacturer Part"
@@ -11196,9 +11227,9 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
-msgstr ""
+msgstr "Sortételek importálása"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:237
msgid "Supplier Code"
@@ -11214,7 +11245,7 @@ msgstr "Gyártói kód"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:284
msgid "Show line items which have been received"
-msgstr ""
+msgstr "Bevételezett sortételek megjelenítése"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:344
#: src/tables/sales/ReturnOrderLineItemTable.tsx:160
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Sortétel bevételezése"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Bevételezés"
@@ -11244,7 +11275,7 @@ msgstr "Beszállítói alkatrész hozzáadása"
#: src/tables/purchasing/SupplierPartTable.tsx:200
msgid "Import supplier part"
-msgstr ""
+msgstr "Beszállítói alkatrész importálása"
#: src/tables/purchasing/SupplierPartTable.tsx:205
#~ msgid "Supplier part deleted"
@@ -11256,15 +11287,15 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:216
msgid "Show active supplier parts"
-msgstr ""
+msgstr "Aktív beszállítói alkatrészek megjelenítése"
#: src/tables/purchasing/SupplierPartTable.tsx:221
msgid "Show active internal parts"
-msgstr ""
+msgstr "Aktív belső alkatrészek megjelenítése"
#: src/tables/purchasing/SupplierPartTable.tsx:225
msgid "Active Supplier"
-msgstr ""
+msgstr "Aktív beszállító"
#: src/tables/purchasing/SupplierPartTable.tsx:226
msgid "Show active suppliers"
@@ -11272,7 +11303,7 @@ msgstr "Aktív beszállítók megjelenítése"
#: src/tables/purchasing/SupplierPartTable.tsx:231
msgid "Show supplier parts with stock"
-msgstr ""
+msgstr "Készlettel rendelkező beszállítói alkatrészek megjelenítése"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:158
msgid "Received Date"
@@ -11280,15 +11311,15 @@ msgstr "Beérkezés dátuma"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:172
msgid "Show items which have been received"
-msgstr ""
+msgstr "Bevételezett tételek megjelenítése"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:177
msgid "Filter by line item status"
-msgstr ""
+msgstr "Szűrés sortétel státusz szerint"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:195
msgid "Receive selected items"
-msgstr ""
+msgstr "Kiválasztott tételek bevételezése"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:230
msgid "Receive Item"
@@ -11296,15 +11327,15 @@ msgstr "Tétel bevételezése"
#: src/tables/sales/SalesOrderAllocationTable.tsx:89
msgid "Show outstanding allocations"
-msgstr ""
+msgstr "Függőben lévő lefoglalások megjelenítése"
#: src/tables/sales/SalesOrderAllocationTable.tsx:93
msgid "Assigned to Shipment"
-msgstr ""
+msgstr "Szállítmányhoz rendelve"
#: src/tables/sales/SalesOrderAllocationTable.tsx:94
msgid "Show allocations assigned to a shipment"
-msgstr ""
+msgstr "Szállítmányhoz rendelt lefoglalások megjelenítése"
#: src/tables/sales/SalesOrderAllocationTable.tsx:156
msgid "Available Quantity"
@@ -11312,7 +11343,7 @@ msgstr "Elérhető mennyiség"
#: src/tables/sales/SalesOrderAllocationTable.tsx:163
msgid "Allocated Quantity"
-msgstr ""
+msgstr "Lefoglalt mennyiség"
#: src/tables/sales/SalesOrderAllocationTable.tsx:177
#: src/tables/sales/SalesOrderAllocationTable.tsx:191
@@ -11326,7 +11357,7 @@ msgstr "Nincs kiszállítva"
#: src/tables/sales/SalesOrderAllocationTable.tsx:211
#: src/tables/sales/SalesOrderAllocationTable.tsx:235
msgid "Edit Allocation"
-msgstr ""
+msgstr "Lefoglalás szerkesztése"
#: src/tables/sales/SalesOrderAllocationTable.tsx:218
#: src/tables/sales/SalesOrderAllocationTable.tsx:241
@@ -11340,11 +11371,11 @@ msgstr "Szállítmány megtekintése"
#: src/tables/sales/SalesOrderAllocationTable.tsx:317
msgid "Assign to Shipment"
-msgstr ""
+msgstr "Szállítmányhoz rendelés"
#: src/tables/sales/SalesOrderAllocationTable.tsx:333
msgid "Assign to shipment"
-msgstr ""
+msgstr "Szállítmányhoz rendelés"
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
#~ msgid "Allocate stock"
@@ -11356,15 +11387,15 @@ msgstr ""
#: src/tables/sales/SalesOrderLineItemTable.tsx:293
msgid "Allocate Serial Numbers"
-msgstr ""
+msgstr "Sorozatszámok lefoglalása"
#: src/tables/sales/SalesOrderLineItemTable.tsx:343
msgid "Show lines which are fully allocated"
-msgstr ""
+msgstr "Teljesen lefoglalt sorok megjelenítése"
#: src/tables/sales/SalesOrderLineItemTable.tsx:348
msgid "Show lines which are completed"
-msgstr ""
+msgstr "Befejezett sorok megjelenítése"
#: src/tables/sales/SalesOrderLineItemTable.tsx:421
msgid "Allocate serials"
@@ -11384,7 +11415,7 @@ msgstr "Készlet rendelés"
#: src/tables/sales/SalesOrderShipmentTable.tsx:79
msgid "Create Shipment"
-msgstr ""
+msgstr "Szállítmány létrehozása"
#: src/tables/sales/SalesOrderShipmentTable.tsx:164
msgid "Items"
@@ -11404,15 +11435,15 @@ msgstr "Szállítmány hozzáadása"
#: src/tables/sales/SalesOrderShipmentTable.tsx:300
msgid "Show shipments which have been checked"
-msgstr ""
+msgstr "Ellenőrzött szállítmányok megjelenítése"
#: src/tables/sales/SalesOrderShipmentTable.tsx:305
msgid "Show shipments which have been shipped"
-msgstr ""
+msgstr "Kiszállított szállítmányok megjelenítése"
#: src/tables/sales/SalesOrderShipmentTable.tsx:310
msgid "Show shipments which have been delivered"
-msgstr ""
+msgstr "Kézbesített szállítmányok megjelenítése"
#: src/tables/settings/ApiTokenTable.tsx:30
#: src/tables/settings/ApiTokenTable.tsx:44
@@ -11447,7 +11478,7 @@ msgstr "Lejárat"
#: src/tables/settings/ApiTokenTable.tsx:118
msgid "Show revoked tokens"
-msgstr ""
+msgstr "Visszavont tokenek megjelenítése"
#: src/tables/settings/ApiTokenTable.tsx:137
msgid "Revoke"
@@ -11455,15 +11486,15 @@ msgstr "Visszavonás"
#: src/tables/settings/ApiTokenTable.tsx:161
msgid "Error revoking token"
-msgstr ""
+msgstr "Hiba a token visszavonása közben"
#: src/tables/settings/ApiTokenTable.tsx:183
msgid "Tokens are only shown once - make sure to note it down."
-msgstr ""
+msgstr "A tokenek csak egyszer jelennek meg - ügyeljen rá, hogy jegyezze fel."
#: src/tables/settings/BarcodeScanHistoryTable.tsx:60
msgid "Barcode Information"
-msgstr ""
+msgstr "Vonalkód információ"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:85
msgid "Endpoint"
@@ -11485,23 +11516,23 @@ msgstr "Válasz"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:209
msgid "Filter by result"
-msgstr ""
+msgstr "Szűrés eredmény szerint"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:223
msgid "Delete Barcode Scan Record"
-msgstr ""
+msgstr "Vonalkód beolvasási rekord törlése"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:249
msgid "Barcode Scan Details"
-msgstr ""
+msgstr "Vonalkód beolvasás részletei"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:259
msgid "Logging Disabled"
-msgstr ""
+msgstr "Naplózás kikapcsolva"
#: src/tables/settings/BarcodeScanHistoryTable.tsx:261
msgid "Barcode logging is not enabled"
-msgstr ""
+msgstr "A vonalkód naplózás nincs engedélyezve"
#: src/tables/settings/CustomStateTable.tsx:63
msgid "Status Group"
@@ -11570,7 +11601,7 @@ msgstr "Teszt e-mail küldése"
#: src/tables/settings/EmailTable.tsx:45
msgid "Email sent successfully"
-msgstr ""
+msgstr "E-mail sikeresen elküldve"
#: src/tables/settings/EmailTable.tsx:71
msgid "Delete Email"
@@ -11578,7 +11609,7 @@ msgstr "E-mail törlése"
#: src/tables/settings/EmailTable.tsx:72
msgid "Email deleted successfully"
-msgstr ""
+msgstr "E-mail sikeresen törölve"
#: src/tables/settings/EmailTable.tsx:80
msgid "Subject"
@@ -11622,15 +11653,15 @@ msgstr "Hibaüzenet"
#: src/tables/settings/ErrorTable.tsx:123
msgid "Delete Error Report"
-msgstr ""
+msgstr "Hibajelentés törlése"
#: src/tables/settings/ErrorTable.tsx:125
msgid "Are you sure you want to delete this error report?"
-msgstr ""
+msgstr "Biztosan törölni szeretné ezt a hibajelentést?"
#: src/tables/settings/ErrorTable.tsx:127
msgid "Error report deleted"
-msgstr ""
+msgstr "Hibajelentés törölve"
#: src/tables/settings/ErrorTable.tsx:146
#: src/tables/settings/FailedTasksTable.tsx:65
@@ -11675,20 +11706,20 @@ msgstr "Nincs információ"
#: src/tables/settings/FailedTasksTable.tsx:93
msgid "No error details are available for this task"
-msgstr ""
+msgstr "Ehhez a feladathoz nem állnak rendelkezésre hiba részletek"
#: src/tables/settings/GroupTable.tsx:71
msgid "Group with id {id} not found"
-msgstr ""
+msgstr "Csoport {id} azonosítóval nem található"
#: src/tables/settings/GroupTable.tsx:73
msgid "An error occurred while fetching group details"
-msgstr ""
+msgstr "Hiba történt a csoport részleteinek lekérésekor"
#: src/tables/settings/GroupTable.tsx:96
#: src/tables/settings/GroupTable.tsx:257
msgid "Name of the user group"
-msgstr ""
+msgstr "A felhasználói csoport neve"
#: src/tables/settings/GroupTable.tsx:117
#~ msgid "Permission set"
@@ -11729,12 +11760,12 @@ msgstr "Csoport hozzáadása"
#: src/tables/settings/ImportSessionTable.tsx:38
msgid "Delete Import Session"
-msgstr ""
+msgstr "Import munkamenet törlése"
#: src/tables/settings/ImportSessionTable.tsx:44
#: src/tables/settings/ImportSessionTable.tsx:129
msgid "Create Import Session"
-msgstr ""
+msgstr "Import munkamenet létrehozása"
#: src/tables/settings/ImportSessionTable.tsx:72
msgid "Uploaded"
@@ -11747,11 +11778,11 @@ msgstr "Importált sorok"
#: src/tables/settings/ImportSessionTable.tsx:112
#: src/tables/settings/TemplateTable.tsx:369
msgid "Filter by target model type"
-msgstr ""
+msgstr "Szűrés cél modell típus szerint"
#: src/tables/settings/ImportSessionTable.tsx:118
msgid "Filter by import session status"
-msgstr ""
+msgstr "Szűrés import munkamenet státusz szerint"
#: src/tables/settings/PendingTasksTable.tsx:47
msgid "Arguments"
@@ -11759,15 +11790,15 @@ msgstr "Argumentumok"
#: src/tables/settings/PendingTasksTable.tsx:61
msgid "Remove all pending tasks"
-msgstr ""
+msgstr "Összes függőben lévő feladat eltávolítása"
#: src/tables/settings/PendingTasksTable.tsx:69
msgid "All pending tasks deleted"
-msgstr ""
+msgstr "Összes függőben lévő feladat törölve"
#: src/tables/settings/PendingTasksTable.tsx:76
msgid "Error while deleting all pending tasks"
-msgstr ""
+msgstr "Hiba az összes függőben lévő feladat törlése közben"
#: src/tables/settings/ProjectCodeTable.tsx:58
msgid "Edit Project Code"
@@ -11775,7 +11806,7 @@ msgstr "Projektszám szerkesztése"
#: src/tables/settings/ProjectCodeTable.tsx:66
msgid "Delete Project Code"
-msgstr ""
+msgstr "Projekt kód törlése"
#: src/tables/settings/ProjectCodeTable.tsx:97
msgid "Add project code"
@@ -11819,7 +11850,7 @@ msgstr "Sablon nem található"
#: src/tables/settings/TemplateTable.tsx:167
msgid "An error occurred while fetching template details"
-msgstr ""
+msgstr "Hiba történt a sablon részleteinek lekérésekor"
#: src/tables/settings/TemplateTable.tsx:243
#~ msgid "Add new"
@@ -11835,7 +11866,7 @@ msgstr "Módosítás"
#: src/tables/settings/TemplateTable.tsx:262
msgid "Modify template file"
-msgstr ""
+msgstr "Sablon fájl módosítása"
#: src/tables/settings/TemplateTable.tsx:313
#: src/tables/settings/TemplateTable.tsx:381
@@ -11856,7 +11887,7 @@ msgstr "Sablon hozzáadása"
#: src/tables/settings/TemplateTable.tsx:363
msgid "Filter by enabled status"
-msgstr ""
+msgstr "Szűrés engedélyezett státusz szerint"
#: src/tables/settings/TemplateTable.tsx:420
#~ msgid "Report Output"
@@ -11868,19 +11899,19 @@ msgstr "Csoportok frissítve"
#: src/tables/settings/UserTable.tsx:124
msgid "User groups updated successfully"
-msgstr ""
+msgstr "Felhasználói csoportok sikeresen frissítve"
#: src/tables/settings/UserTable.tsx:131
msgid "Error updating user groups"
-msgstr ""
+msgstr "Hiba a felhasználói csoportok frissítése közben"
#: src/tables/settings/UserTable.tsx:150
msgid "User with id {id} not found"
-msgstr ""
+msgstr "Felhasználó {id} azonosítóval nem található"
#: src/tables/settings/UserTable.tsx:152
msgid "An error occurred while fetching user details"
-msgstr ""
+msgstr "Hiba történt a felhasználó részleteinek lekérésekor"
#: src/tables/settings/UserTable.tsx:154
#~ msgid "No groups"
@@ -11892,7 +11923,7 @@ msgstr "Aktív"
#: src/tables/settings/UserTable.tsx:179
msgid "Designates whether this user should be treated as active. Unselect this instead of deleting accounts."
-msgstr ""
+msgstr "Meghatározza, hogy ez a felhasználó aktívként kezelendő-e. Fiókok törlése helyett távolítsa el a jelölést."
#: src/tables/settings/UserTable.tsx:183
msgid "Is Staff"
@@ -11908,11 +11939,11 @@ msgstr "Rendszergazda"
#: src/tables/settings/UserTable.tsx:189
msgid "Designates that this user has all permissions without explicitly assigning them."
-msgstr ""
+msgstr "Meghatározza, hogy ez a felhasználó rendelkezik minden jogosultsággal azok kifejezett hozzárendelése nélkül."
#: src/tables/settings/UserTable.tsx:199
msgid "You cannot edit the rights for the currently logged-in user."
-msgstr ""
+msgstr "Nem szerkesztheti a jelenleg bejelentkezett felhasználó jogosultságait."
#: src/tables/settings/UserTable.tsx:218
msgid "User Groups"
@@ -11956,15 +11987,15 @@ msgstr "Felhasználó hozzáadása"
#: src/tables/settings/UserTable.tsx:401
msgid "Show active users"
-msgstr ""
+msgstr "Aktív felhasználók megjelenítése"
#: src/tables/settings/UserTable.tsx:406
msgid "Show staff users"
-msgstr ""
+msgstr "Dolgozó felhasználók megjelenítése"
#: src/tables/settings/UserTable.tsx:411
msgid "Show superusers"
-msgstr ""
+msgstr "Adminisztrátorok megjelenítése"
#: src/tables/settings/UserTable.tsx:430
msgid "Edit User"
@@ -11984,11 +12015,11 @@ msgstr "Felhasználó frissítve"
#: src/tables/settings/UserTable.tsx:482
msgid "User updated successfully"
-msgstr ""
+msgstr "Felhasználó sikeresen frissítve"
#: src/tables/settings/UserTable.tsx:488
msgid "Error updating user"
-msgstr ""
+msgstr "Hiba a felhasználó frissítése közben"
#: src/tables/stock/InstalledItemsTable.tsx:38
#: src/tables/stock/InstalledItemsTable.tsx:90
@@ -11997,24 +12028,24 @@ msgstr "Cikk beépítése"
#: src/tables/stock/InstalledItemsTable.tsx:40
msgid "Item installed"
-msgstr ""
+msgstr "Cikk beépítve"
#: src/tables/stock/InstalledItemsTable.tsx:51
msgid "Uninstall Item"
-msgstr ""
+msgstr "Cikk eltávolítása"
#: src/tables/stock/InstalledItemsTable.tsx:53
msgid "Item uninstalled"
-msgstr ""
+msgstr "Cikk eltávolítva"
#: src/tables/stock/InstalledItemsTable.tsx:108
msgid "Uninstall stock item"
-msgstr ""
+msgstr "Készlet cikk eltávolítása"
#: src/tables/stock/LocationTypesTable.tsx:44
#: src/tables/stock/LocationTypesTable.tsx:111
msgid "Add Location Type"
-msgstr ""
+msgstr "Készlethely típus hozzáadása"
#: src/tables/stock/LocationTypesTable.tsx:52
msgid "Edit Location Type"
@@ -12022,7 +12053,7 @@ msgstr "Készlethely típus szerkesztése"
#: src/tables/stock/LocationTypesTable.tsx:60
msgid "Delete Location Type"
-msgstr ""
+msgstr "Készlethely típus törlése"
#: src/tables/stock/LocationTypesTable.tsx:68
msgid "Icon"
@@ -12050,7 +12081,7 @@ msgstr "Készlet tétel fel lett használva egy gyártásban"
#: src/tables/stock/StockItemTable.tsx:141
msgid "This stock item is unavailable"
-msgstr ""
+msgstr "Ez a készlet cikk nem elérhető"
#: src/tables/stock/StockItemTable.tsx:150
msgid "This stock item has expired"
@@ -12078,32 +12109,32 @@ msgstr "Készlet tétel elfogyott"
#: src/tables/stock/StockItemTable.tsx:305
msgid "Stocktake Date"
-msgstr ""
+msgstr "Leltározás dátuma"
#: src/tables/stock/StockItemTable.tsx:323
msgid "Show stock for active parts"
-msgstr ""
+msgstr "Készlet megjelenítése aktív alkatrészekhez"
#: src/tables/stock/StockItemTable.tsx:334
msgid "Show stock for assembled parts"
-msgstr ""
+msgstr "Készlet megjelenítése összeállított alkatrészekhez"
#: src/tables/stock/StockItemTable.tsx:339
msgid "Show items which have been allocated"
-msgstr ""
+msgstr "Lefoglalt tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:344
msgid "Show items which are available"
-msgstr ""
+msgstr "Elérhető tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:348
#: src/tables/stock/StockLocationTable.tsx:38
msgid "Include Sublocations"
-msgstr ""
+msgstr "Alhelyek beleértve"
#: src/tables/stock/StockItemTable.tsx:349
msgid "Include stock in sublocations"
-msgstr ""
+msgstr "Alhelyeken lévő készlet beleértve"
#: src/tables/stock/StockItemTable.tsx:353
msgid "Depleted"
@@ -12111,11 +12142,11 @@ msgstr "Kifogyott"
#: src/tables/stock/StockItemTable.tsx:354
msgid "Show depleted stock items"
-msgstr ""
+msgstr "Kifogyott készlet tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:360
msgid "Show items which are in production"
-msgstr ""
+msgstr "Gyártásban lévő tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:362
#~ msgid "Include stock items for variant parts"
@@ -12123,19 +12154,19 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:368
msgid "Show items which have been consumed by a build order"
-msgstr ""
+msgstr "Gyártási rendeléssel felhasznált tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:373
msgid "Show stock items which are installed in other items"
-msgstr ""
+msgstr "Más tételekben beépített készlet tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:377
msgid "Sent to Customer"
-msgstr ""
+msgstr "Ügyfélhez elküldve"
#: src/tables/stock/StockItemTable.tsx:378
msgid "Show items which have been sent to a customer"
-msgstr ""
+msgstr "Ügyfélhez elküldött tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:389
msgid "Show tracked items"
@@ -12147,7 +12178,7 @@ msgstr "Van beszerzési ára"
#: src/tables/stock/StockItemTable.tsx:394
msgid "Show items which have a purchase price"
-msgstr ""
+msgstr "Beszerzési árral rendelkező tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:397
#~ msgid "Serial Number LTE"
@@ -12155,7 +12186,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:399
msgid "Show items which have expired"
-msgstr ""
+msgstr "Lejárt tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:403
#~ msgid "Serial Number GTE"
@@ -12163,15 +12194,15 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:405
msgid "Show items which are stale"
-msgstr ""
+msgstr "Elavult tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:410
msgid "Expired Before"
-msgstr ""
+msgstr "Lejárt ez előtt"
#: src/tables/stock/StockItemTable.tsx:411
msgid "Show items which expired before this date"
-msgstr ""
+msgstr "Ez a dátum előtt lejárt tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:417
msgid "Expired After"
@@ -12179,15 +12210,15 @@ msgstr "Lejárt ekkor"
#: src/tables/stock/StockItemTable.tsx:418
msgid "Show items which expired after this date"
-msgstr ""
+msgstr "Ez a dátum után lejárt tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:424
msgid "Updated Before"
-msgstr ""
+msgstr "Frissítve ez előtt"
#: src/tables/stock/StockItemTable.tsx:425
msgid "Show items updated before this date"
-msgstr ""
+msgstr "Ez a dátum előtt frissített tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:430
msgid "Updated After"
@@ -12195,31 +12226,31 @@ msgstr "Frissítve ez után"
#: src/tables/stock/StockItemTable.tsx:431
msgid "Show items updated after this date"
-msgstr ""
+msgstr "Ez a dátum után frissített tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:436
msgid "Stocktake Before"
-msgstr ""
+msgstr "Leltározva ez előtt"
#: src/tables/stock/StockItemTable.tsx:437
msgid "Show items counted before this date"
-msgstr ""
+msgstr "Ez a dátum előtt leltározott tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:442
msgid "Stocktake After"
-msgstr ""
+msgstr "Leltározva ez után"
#: src/tables/stock/StockItemTable.tsx:443
msgid "Show items counted after this date"
-msgstr ""
+msgstr "Ez a dátum után leltározott tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:448
msgid "External Location"
-msgstr ""
+msgstr "Külső hely"
#: src/tables/stock/StockItemTable.tsx:449
msgid "Show items in an external location"
-msgstr ""
+msgstr "Külső helyen lévő tételek megjelenítése"
#: src/tables/stock/StockItemTable.tsx:528
#~ msgid "Delete stock items"
@@ -12279,7 +12310,7 @@ msgstr "Teszt"
#: src/tables/stock/StockItemTestResultTable.tsx:180
msgid "Test result for installed stock item"
-msgstr ""
+msgstr "Teszt eredmény a beépített készlet tételhez"
#: src/tables/stock/StockItemTestResultTable.tsx:211
msgid "Attachment"
@@ -12296,11 +12327,11 @@ msgstr "Befejezve"
#: src/tables/stock/StockItemTestResultTable.tsx:307
#: src/tables/stock/StockItemTestResultTable.tsx:378
msgid "Edit Test Result"
-msgstr ""
+msgstr "Teszt eredmény szerkesztése"
#: src/tables/stock/StockItemTestResultTable.tsx:309
msgid "Test result updated"
-msgstr ""
+msgstr "Teszt eredmény frissítve"
#: src/tables/stock/StockItemTestResultTable.tsx:315
#: src/tables/stock/StockItemTestResultTable.tsx:387
@@ -12309,7 +12340,7 @@ msgstr "Teszt eredmény törlése"
#: src/tables/stock/StockItemTestResultTable.tsx:317
msgid "Test result deleted"
-msgstr ""
+msgstr "Teszt eredmény törölve"
#: src/tables/stock/StockItemTestResultTable.tsx:331
msgid "Test Passed"
@@ -12317,11 +12348,11 @@ msgstr "Teszten megfelelt"
#: src/tables/stock/StockItemTestResultTable.tsx:332
msgid "Test result has been recorded"
-msgstr ""
+msgstr "Teszt eredmény rögzítve lett"
#: src/tables/stock/StockItemTestResultTable.tsx:339
msgid "Failed to record test result"
-msgstr ""
+msgstr "Teszt eredmény rögzítése sikertelen"
#: src/tables/stock/StockItemTestResultTable.tsx:356
msgid "Pass Test"
@@ -12329,15 +12360,15 @@ msgstr "Teszt sikeres"
#: src/tables/stock/StockItemTestResultTable.tsx:405
msgid "Show results for required tests"
-msgstr ""
+msgstr "Kötelező tesztek eredményeinek megjelenítése"
#: src/tables/stock/StockItemTestResultTable.tsx:409
msgid "Include Installed"
-msgstr ""
+msgstr "Beépítettek beleértve"
#: src/tables/stock/StockItemTestResultTable.tsx:410
msgid "Show results for installed stock items"
-msgstr ""
+msgstr "Beépített készlet tételek eredményeinek megjelenítése"
#: src/tables/stock/StockItemTestResultTable.tsx:414
msgid "Passed"
@@ -12345,11 +12376,11 @@ msgstr "Megfelelt"
#: src/tables/stock/StockItemTestResultTable.tsx:415
msgid "Show only passed tests"
-msgstr ""
+msgstr "Csak a megfelelt tesztek megjelenítése"
#: src/tables/stock/StockItemTestResultTable.tsx:420
msgid "Show results for enabled tests"
-msgstr ""
+msgstr "Engedélyezett tesztek eredményeinek megjelenítése"
#: src/tables/stock/StockLocationTable.tsx:38
#~ msgid "structural"
@@ -12357,7 +12388,7 @@ msgstr ""
#: src/tables/stock/StockLocationTable.tsx:39
msgid "Include sublocations in results"
-msgstr ""
+msgstr "Alhelyek beleértve az eredményekben"
#: src/tables/stock/StockLocationTable.tsx:43
#~ msgid "external"
@@ -12365,15 +12396,15 @@ msgstr ""
#: src/tables/stock/StockLocationTable.tsx:44
msgid "Show structural locations"
-msgstr ""
+msgstr "Szerkezeti helyek megjelenítése"
#: src/tables/stock/StockLocationTable.tsx:49
msgid "Show external locations"
-msgstr ""
+msgstr "Külső helyek megjelenítése"
#: src/tables/stock/StockLocationTable.tsx:53
msgid "Has location type"
-msgstr ""
+msgstr "Van hely típusa"
#: src/tables/stock/StockLocationTable.tsx:58
msgid "Filter by location type"
@@ -12386,11 +12417,11 @@ msgstr "Új készlet hely"
#: src/tables/stock/StockLocationTable.tsx:129
msgid "Set Parent Location"
-msgstr ""
+msgstr "Szülő hely beállítása"
#: src/tables/stock/StockLocationTable.tsx:149
msgid "Set parent location for the selected items"
-msgstr ""
+msgstr "Szülő hely beállítása a kiválasztott tételekhez"
#: src/tables/stock/StockTrackingTable.tsx:77
msgid "Added"
@@ -12402,7 +12433,7 @@ msgstr "Eltávolítva"
#: src/tables/stock/StockTrackingTable.tsx:221
msgid "No user information"
-msgstr ""
+msgstr "Nincs felhasználói információ"
#: src/tables/stock/TestStatisticsTable.tsx:34
#: src/tables/stock/TestStatisticsTable.tsx:64
@@ -12427,5 +12458,5 @@ msgstr "Olvasd el a dokumentációt"
#: src/views/MobileAppView.tsx:42
msgid "Ignore and continue to Desktop view"
-msgstr ""
+msgstr "Kihagyás és folytatás asztali nézetben"
diff --git a/src/frontend/src/locales/id/messages.po b/src/frontend/src/locales/id/messages.po
index 7e83fba576..3990687618 100644
--- a/src/frontend/src/locales/id/messages.po
+++ b/src/frontend/src/locales/id/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: id\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Indonesian\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr "Hapus"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Batal"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Cari"
@@ -97,12 +97,12 @@ msgstr "Tidak"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Tidak"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Komponen Rendering Galat"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Pindai"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Cetak label"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Cetak"
@@ -819,19 +820,19 @@ msgstr "Cetak"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Cetak Laporan"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Cetak label"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Cetak Laporan"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Gagal Login"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr "Nama Anda"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Kata Sandi"
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Versi API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} icon"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Memuat"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Tutup"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Tautan"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentasi"
@@ -2547,7 +2553,7 @@ msgstr "Pengaturan"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Pengaturan Sistem"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Tidak Aktif"
@@ -3001,7 +3007,7 @@ msgstr "Tidak ada persediaan"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Lokasi"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Nomor Seri"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Nomor Seri"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Jumlah"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informasi Server"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informasi Lisensi"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Terverifikasi"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Tidak Terverifikasi"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Tambah Alamat Surel"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "Surel"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Alamat Surel"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Tambah Alamat Surel"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "Surel"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Alamat Surel"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Tambah Surel"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Tambah Surel"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr "Total Harga"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr "Harga Per buah"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/it/messages.po b/src/frontend/src/locales/it/messages.po
index 395942f712..cdb049b580 100644
--- a/src/frontend/src/locales/it/messages.po
+++ b/src/frontend/src/locales/it/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: it\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Elimina"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Annulla"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Azioni"
@@ -73,7 +73,7 @@ msgstr "Azioni"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Ricerca"
@@ -97,12 +97,12 @@ msgstr "No"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "No"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Articolo"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Articoli"
@@ -149,14 +150,14 @@ msgstr "Articoli"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Parametro"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parametri"
@@ -168,7 +169,7 @@ msgstr "Modello Parametro"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Modelli parametro"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "Categoria Articolo"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Categorie Articolo"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Articolo in magazzino"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Articoli in magazzino"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Ubicazione articolo"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Ubicazioni articolo"
@@ -267,7 +268,7 @@ msgstr "Tipi ubicazione articolo"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Cronologia Magazzino"
@@ -340,11 +341,11 @@ msgstr "Ordine d'acquisto"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Ordini d'acquisto"
@@ -373,10 +374,10 @@ msgstr "Ordine di Vendita"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Ordini di Vendita"
@@ -398,10 +399,10 @@ msgstr "Ordine di reso"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Ordini di reso"
@@ -546,23 +547,23 @@ msgstr "Elenchi di selezione"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Ordini di Produzione"
@@ -597,11 +598,11 @@ msgstr "Ordini di Produzione"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Errore nel renderizzare il componente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Si è verificato un errore durante il rendering di questo componente. Fare riferimento alla console per maggiori informazioni."
@@ -637,7 +638,7 @@ msgstr "Codice a barre"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Scansione"
@@ -798,12 +799,12 @@ msgstr "Stampa report"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Stampa Etichetta"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Stampa"
@@ -819,19 +820,19 @@ msgstr "Stampa"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Stampa report"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Azioni di stampa"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Stampa Etichette"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Stampa report"
@@ -860,8 +861,8 @@ msgstr "Verrai reindirizzato al provider per ulteriori azioni."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Apri scanner di codici a barre"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Accetta Disposizione"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Rimuovi l'immagine associata all'articolo?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Elimina"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Invia"
@@ -1579,21 +1580,21 @@ msgstr "Accesso effettuato con successo"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Accesso non riuscito"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Controllare i dati inseriti e riprovare."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Spedizione email riuscita"
@@ -1628,7 +1629,7 @@ msgstr "Il tuo nome utente"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Password"
@@ -1732,7 +1733,7 @@ msgstr "Host"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Versione API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} icone"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Caricamento"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Elaborazione dati"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Si è verificato un errore"
@@ -2002,31 +2004,31 @@ msgstr "Seleziona la colonna o lascia vuoto per ignorare questo campo."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignora questo campo"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mappatura colonne di dati ai campi del database"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Accetta Mappatura Colonna"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Campo Database"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Campo descrizione"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Colonna Importata"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Valore Predefinito"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mappa colonne"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importa dati"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "I dati sono stati importati correttamente"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Chiudi"
@@ -2208,7 +2214,7 @@ msgstr "Aggiornamento dei ruoli di gruppo"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Ruolo"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Vista"
@@ -2255,10 +2261,10 @@ msgstr "Nessun articolo"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Collegamenti"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentazione"
@@ -2479,7 +2485,7 @@ msgstr "Avvisi"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "Nessun problema rilevato"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
@@ -2547,7 +2553,7 @@ msgstr "Impostazioni"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Impostazioni Utente"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Impostazioni di sistema"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centro Amministratore"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Disconnettiti"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Rimuovi gruppo di ricerca"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Informazioni Plugin"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Spedizione"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inattivo"
@@ -3001,7 +3007,7 @@ msgstr "Nessuno stock"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "In ordine"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Categoria"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Categoria"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Posizione"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Numero Seriale"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Numero Seriale"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Quantità"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Lotto"
@@ -3193,11 +3198,19 @@ msgstr "Aggiungi Stato Personalizzato"
msgid "Create a new custom state for your workflow"
msgstr "Crea un nuovo stato personalizzato per il tuo flusso di lavoro"
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Modifica Impostazione"
@@ -3206,32 +3219,32 @@ msgstr "Modifica Impostazione"
msgid "Setting {key} updated successfully"
msgstr "Impostazione {key} aggiornata correttamente"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Impostazione aggiornata"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Impostazione {0} aggiornata correttamente"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Errore nella modifica dell'impostazione"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Errore nel caricamento delle impostazioni"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Nessuna impostazione"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Non ci sono impostazioni configurabili disponibili"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Nessuna impostazione specificata"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr "Successivo"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Modifica Articolo"
@@ -3770,13 +3783,13 @@ msgstr "Requisiti di vendita"
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Ordine Articoli"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Vai alla bacheca InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Visita la documentazione per saperne di più su InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Informazioni su InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informazioni sul Server"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Informazioni su questa istanza di Inventree"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informazioni sulla licenza"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licenze per dipendenze del servizio"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Apri navigazione"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Apri il menu di navigazione principale"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Scansiona un codice a barre o un codice QR"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr "Vai alle impostazioni utente"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr "Vai agli ordini di acquisto"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr "Vai agli ordini di vendita"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr "Vai agli Ordini di Reso"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr "Vai agli ordini di produzione"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr "Vai alle impostazioni di sistema"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Vai al centro di amministrazione"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "Gestisci plugin InvenTree"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Sostitutivo aggiunto"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Output produzione"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr "Quantità da completare"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr "Quantità da completare"
msgid "Status"
msgstr "Stato"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Completa gli output di produzione"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Gli ordini di produzione sono stati completati"
@@ -4428,24 +4445,24 @@ msgstr "Gli ordini di produzione sono stati completati"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr "Quantità da scartare"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Rimuovi gli output di produzione"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Gli ordini di produzione selezionati saranno completati, ma contrassegnati come scartati"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Gli articoli di magazzino assegnati verranno consumati"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Gli output di produzione sono stati rimossi"
@@ -4453,24 +4470,24 @@ msgstr "Gli output di produzione sono stati rimossi"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Cancella gli output di produzione"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Gli ordini di produzione verranno eliminati"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Gli articoli di magazzino assegnati saranno restituiti alle scorte"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Gli output di produzione sono stati cancellati"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Gli output di produzione sono stati cancellati"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Allocato"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Posizione sorgente"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Selezionare la posizione di origine per l'assegnazione dello stock"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Selezionare la posizione di origine per l'assegnazione dello stock"
msgid "Allocate Stock"
msgstr "Assegna Scorte"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Articoli di stock assegnati"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Articoli di stock assegnati"
msgid "Consume Stock"
msgstr "Consuma Scorte"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr "Articoli di magazzino programmati per il consumo"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Completamente consumato"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr "Seleziona il codice progetto per questa voce di riga"
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr "Seleziona il codice progetto per questa voce di riga"
msgid "Subscribed"
msgstr "Sottoscritto"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Sottoscrivi le notifiche per questo articolo"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Categoria articolo principale"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Sottoscrivi notifiche per questa categoria"
@@ -4690,8 +4707,8 @@ msgstr "Memorizza con stock già ricevuto"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Reso"
msgid "Count"
msgstr "Conta"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Aggiungi Giacenza"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Scorte aggiunte"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Aumenta la quantità degli articoli di magazzino selezionati di una data quantità."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Rimuovi giacenza"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Scorte rimosse"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Diminuisce la quantità degli articoli di magazzino selezionati di una data quantità."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Trasferisci giacenza"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Scorte trasferite"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Trasferisci gli elementi selezionati nella posizione specificata."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Restituisci Elemento a Magazzino"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Reso a magazzino effettuato"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Restituisce gli articoli selezionati in magazzino, nella posizione specificata."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Conteggio Giacenze"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Scorte contate"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Contare gli articoli di magazzino selezionati e regolare la quantità di conseguenza."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Modifica stato giacenze"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Stato delle scorte cambiato"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Cambia lo stato degli articoli a magazzino selezionati."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Unisci giacenze"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Scorte unite"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Unisci gli articoli di magazzino"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "L'operazione di unione non è reversibile"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Le informazioni di tracciamento potrebbero essere perse durante l'unione degli articoli"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "Le informazioni sul fornitore potrebbero essere perse durante l'unione degli articoli"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Assegnare la scorta al cliente"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Scorte assegnate al cliente"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Cancella Elemento di Magazzino"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Scorte cancellate"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Questa operazione eliminerà definitivamente gli articoli a magazzino selezionati."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Posizione giacenza principale"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Trova Numero Di Serie"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Nessun articolo corrispondente trovato"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Più elementi corrispondenti trovati"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Risposta non valida dal server"
@@ -5062,99 +5079,110 @@ msgstr "Errore interno del server"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Già connesso"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "C'è una sessione in conflitto sul server per questo browser. Si prega di disconnettersi prima dalla precedente sessione."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Disconnesso"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "Nessuna risposta dal server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Nessuna risposta dal server."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "Login MFA riuscito"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "I dettagli MFA sono stati forniti automaticamente nel browser"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Disconnesso"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Disconnesso con Successo"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Lingua cambiata"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "La tua lingua attiva è stata cambiata in quella impostata nel tuo profilo"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Tema cambiato"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Il tuo tema attivo è stato cambiato con quello impostato nel tuo profilo"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Controlla la tua casella di posta per un link di reset. Funziona solo se hai un account. Controlla anche lo spam."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Ripristino fallito"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Già connesso"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "C'è una sessione in conflitto sul server per questo browser. Si prega di disconnettersi prima dalla precedente sessione."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Accesso effettuato"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Accesso effettuato con successo"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Impossibile impostare l'MFA"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Password impostata"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "La password è stata impostata con successo. Ora puoi accedere con la tua nuova password"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "La password non può essere cambiata"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "Le due password inserite non corrispondono"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Password cambiata"
@@ -5210,11 +5238,11 @@ msgstr "La richiesta è scaduta"
msgid "Exporting Data"
msgstr "Esportazione dati"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Esporta Dati"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Esporta"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Elimina gli articoli a magazzino selezionati"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Azioni magazzino"
@@ -5383,12 +5411,12 @@ msgstr "Non hai un account?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Autenticazione a più fattori"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "Codice TOTP"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Posizione"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Tipo"
@@ -5933,220 +5961,220 @@ msgstr "Modifica Profilo"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr "Riautenticazione Riuscita"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr "Sei stato riautenticato con successo."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr "Errore durante la riautenticazione"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr "Ri-autenticazione non riuscita"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr "Ri-autenticazione fallita"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr "Riautenticazione"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr "La ri-autenticazione è necessaria per continuare."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Inserisci la tua password"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr "Inserisci uno dei codici TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr "Credenziale WebAuthn Rimossa"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr "Credenziale WebAuthn rimossa con successo."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr "Errore nella rimozione della credenziale WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr "Rimuovi Credenziale WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr "Conferma Rimozione"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr "Conferma la rimozione delle credenziali webauth"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr "TOTP Rimosso"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr "Token TOTP rimosso con successo."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr "Errore nel rimuovere il token TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr "Rimuovi Token TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr "Conferma la rimozione del codice TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr "TOTP Già Registrato"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr "Un token TOTP è già registrato per questo account."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr "Errore Nel Recupero Della Registrazione TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr "Si è verificato un errore imprevisto durante il recupero dei dati di registrazione TOTP."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr "TOTP Registrato"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr "Token TOTP registrato con successo."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Errore registrazione token TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "Registra Token TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr "Errore nel recupero dei codici di recupero"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Codici di recupero"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr "È disponibile per l'uso il seguente codice di recupero monouso"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr "Copia i codici di recupero negli appunti"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr "Nessun Codice Inutilizzato"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr "Non ci sono codici di recupero disponibili"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr "WebAuthn Registrato"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr "Credenziali WebAuthn registrate con successo"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr "Errore nella registrazione delle credenziali WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr "Registrazione WebAuthn Fallita"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr "Registrazione delle credenziali di WebAuthn non riuscita"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr "Errore nel recupero della registrazione WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Password monouso basata sul tempo"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Codici di recupero monouso pre-generati"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr "Autenticazione Web (WebAuthn) è uno standard web per l'autenticazione sicura"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Ultimo utilizzo"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Creato il"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Non Configurato"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "Nessun token multi-fattore configurato per questo account"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr "Registra Metodo Di Autenticazione"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr "Nessun Metodi MFA Disponibili"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr "Non ci sono metodi MFA disponibili per la configurazione"
@@ -6162,47 +6190,47 @@ msgstr "Password monouso"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Inserisci il codice TOTP per assicurarti che sia registrato correttamente"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Indirizzo email"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Indirizzo email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Accesso singolo"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Non abilitato"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "L'accesso singolo non è abilitato per questo server "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Non abilitato"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "L'accesso singolo non è abilitato per questo server "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Token Di Accesso"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Informazioni sulla sessione"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Informazioni sulla sessione"
msgid "Timestamp"
msgstr "Marca temporale"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Metodo"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Errore durante l'aggiornamento dell'email"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Attualmente nessun indirizzo email è registrato."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "I seguenti indirizzi email sono associati con il tuo account:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Principale"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verificato"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Non verificato"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Rendi principale"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Invia nuovamente il Codice di Verifica"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Aggiungi indirizzo email"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Indirizzo e-mail"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Errore durante l'aggiunta della email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Aggiungi indirizzo email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Indirizzo e-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Errore durante l'aggiunta della email"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Aggiungi Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Errore durante l'aggiunta della email"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Aggiungi Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "Non ci sono provider connessi a questo account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "Puoi accedere al tuo account utilizzando uno dei seguenti provider"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Rimuovi Collegamento Provider"
@@ -6462,7 +6490,7 @@ msgstr "Messaggi email"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:36
msgid "System Status"
-msgstr ""
+msgstr "Stato del sistema"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:47
msgid "Admin Center Information"
@@ -6921,7 +6949,7 @@ msgstr "Stato Cliente"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Ordine di Produzione Subordinato"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Mostra ordini di produzione esterni"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Vista Tabella"
@@ -7245,8 +7274,9 @@ msgstr "Visualizzazione calendario"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
-msgstr ""
+msgstr "Vista Parametrica"
#: src/pages/company/CompanyDetail.tsx:100
msgid "Website"
@@ -7349,7 +7379,7 @@ msgstr "Collegamento esterno"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Dettagli Articolo"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Aggiungi articolo fornitore"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Nessuna giacenza"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Utente di base"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Sottocategorie"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Sposta articoli nella categoria superiore"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Elimina articoli"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Articolo Vendibile"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Creato Da"
msgid "Default Supplier"
msgstr "Fornitore predefinito"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Scadenza Predefinita"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "giorni"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Fascia di Prezzo"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Ultimo Numero Di Serie"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Seleziona Revisione Articolo"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varianti"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Allocazioni"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Distinta base"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Utilizzato In"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Prezzo Articolo"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Modelli test"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Articoli correlati"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "L'articolo è bloccato"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "I parametri dell'articolo non possono essere modificati, poiché l'articolo è bloccata"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "I parametri dell'articolo non possono essere modificati, poiché l'articolo è bloccata"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Richiesto"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
-msgstr ""
+msgstr "Deficit"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Aggiungi articolo"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Elimina Articolo"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "L'eliminazione di questo articolo non è reversibile"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Ordine"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Ordine Stock"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Cerca per numero di serie"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Azioni articolo"
@@ -8008,8 +8038,8 @@ msgstr "Valore massimo"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Valore massimo"
msgid "Total Price"
msgstr "Prezzo Totale"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Componente"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Prezzo Minimo"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Prezzo Massimo"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Prezzo Massimo"
msgid "Unit Price"
msgstr "Prezzo Unitario"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Diagramma a torta"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Diagramma a barre"
@@ -8543,94 +8573,94 @@ msgstr "Deseleziona"
msgid "Mark shipment as unchecked"
msgstr "Segna spedizione come non controllata"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Posizione principale"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sottoallocazioni"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Tipo di posizione"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Posizione delle scorte di primo livello"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Dettagli posizione"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Articoli predefiniti"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Modifica la posizione delle scorte"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Sposta articoli nella categoria superiore"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Elimina Posizione di Giacenza"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Azione Articoli"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Scansiona gli elementi in magazzino in questa ubicazione"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Modifica la posizione delle scorte"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Sposta articoli nella categoria superiore"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Elimina Posizione di Giacenza"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Azione Articoli"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Scansiona gli elementi in magazzino in questa ubicazione"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr "Azioni posizioni"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Azione per le posizioni figlie in questa posizione"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Scansione articolo magazzino"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Articolo di magazzino scansionato nella posizione"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Errore nella scansione dell'articolo a magazzino"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Scansiona Ubicazione magazzino"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Posizione magazzino scansionata nella posizione"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Errore nella scansione della posizione a magazzino"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Azioni posizione"
@@ -8917,6 +8947,7 @@ msgstr "Mostra gli articoli che hanno un numero di serie"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Seriale"
@@ -9139,12 +9170,12 @@ msgstr "Aggiungi filtro"
msgid "Clear Filters"
msgstr "Rimuovi filtri"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Nessun record trovato"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Errore nel caricare le opzioni della tabella"
@@ -9156,7 +9187,7 @@ msgstr "Errore nel caricare le opzioni della tabella"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Il server ha restituito un tipo di dati errato"
@@ -9176,7 +9207,7 @@ msgstr "Il server ha restituito un tipo di dati errato"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Errore nel caricare i dati della tabella"
@@ -9190,11 +9221,11 @@ msgstr "Errore nel caricare i dati della tabella"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Mostra dettagli"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr "Visualizza {model}"
@@ -9788,7 +9819,7 @@ msgstr "Mostra ordini con data d'inizio"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Assegnazione stock output di produzione"
@@ -10049,7 +10080,7 @@ msgstr "Visualizza Articolo"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Aggiungi linea articolo"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Modifica linea Articolo"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10086,7 +10117,7 @@ msgstr "Aggiornato da"
#: src/tables/general/ParameterTable.tsx:118
msgid "Show parameters for enabled templates"
-msgstr ""
+msgstr "Mostra i parametri per i modelli abilitati"
#: src/tables/general/ParameterTable.tsx:124
msgid "Filter by user who last updated the parameter"
@@ -10094,7 +10125,7 @@ msgstr "Filtra per utente che per ultimo ha aggiornato il parametro"
#: src/tables/general/ParameterTable.tsx:154
msgid "Import Parameters"
-msgstr ""
+msgstr "Importa parametri"
#: src/tables/general/ParameterTable.tsx:164
#: src/tables/general/ParametricDataTable.tsx:261
@@ -10115,19 +10146,19 @@ msgstr "Elimina Parametro"
#: src/tables/general/ParameterTable.tsx:191
msgid "Add Parameters"
-msgstr ""
+msgstr "Aggiungi parametri"
#: src/tables/general/ParameterTable.tsx:197
msgid "Create Parameter"
-msgstr ""
+msgstr "Crea Parametro"
#: src/tables/general/ParameterTable.tsx:199
msgid "Create a new parameter"
-msgstr ""
+msgstr "Crea un nuovo parametro"
#: src/tables/general/ParameterTable.tsx:208
msgid "Import parameters from a file"
-msgstr ""
+msgstr "Importa parametri da file"
#: src/tables/general/ParameterTemplateTable.tsx:48
#: src/tables/general/ParameterTemplateTable.tsx:197
@@ -10173,7 +10204,7 @@ msgstr "Mostra modelli con unità"
#: src/tables/general/ParameterTemplateTable.tsx:154
msgid "Show enabled templates"
-msgstr ""
+msgstr "Mostra modelli abilitati"
#: src/tables/general/ParameterTemplateTable.tsx:158
#: src/tables/settings/ImportSessionTable.tsx:111
@@ -10183,7 +10214,7 @@ msgstr "Tipo Modello"
#: src/tables/general/ParameterTemplateTable.tsx:159
msgid "Filter by model type"
-msgstr ""
+msgstr "Filtra per tipo di modello"
#: src/tables/general/ParametricDataTable.tsx:79
msgid "Click to edit"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Giacenza Richiesta"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Vedi Ordine di Produzione"
@@ -11196,7 +11227,7 @@ msgstr "Mostra gli articoli del produttore per i produttori attivi"
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Importa Elementi Riga"
@@ -11222,11 +11253,11 @@ msgstr "Mostra gli elementi di riga che sono stati ricevuti"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Ricevi voce di riga"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Ricevi articoli"
diff --git a/src/frontend/src/locales/ja/messages.po b/src/frontend/src/locales/ja/messages.po
index 2c001fafa7..ffb366e296 100644
--- a/src/frontend/src/locales/ja/messages.po
+++ b/src/frontend/src/locales/ja/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: ja\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Japanese\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr "削除"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "キャンセル"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "アクション"
@@ -73,7 +73,7 @@ msgstr "アクション"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "検索"
@@ -97,12 +97,12 @@ msgstr "いいえ"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "いいえ"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "パーツ"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "パーツ"
@@ -149,14 +150,14 @@ msgstr "パーツ"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "パラメータ"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "パラメータ"
@@ -168,7 +169,7 @@ msgstr "パラメータテンプレート"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "パラメータテンプレート"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "パーツカテゴリ"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "パーツカテゴリ"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "在庫商品"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "在庫商品"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "在庫場所"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "在庫場所"
@@ -267,7 +268,7 @@ msgstr "ストックロケーションの種類"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "株式履歴"
@@ -340,11 +341,11 @@ msgstr "注文"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "購入注文"
@@ -373,10 +374,10 @@ msgstr "セールスオーダー"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "セールスオーダー"
@@ -398,10 +399,10 @@ msgstr "リターンオーダー"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "返品注文"
@@ -546,23 +547,23 @@ msgstr "セレクション・リスト"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "管理者"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "組立注文"
@@ -597,11 +598,11 @@ msgstr "組立注文"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "エラー:コンポーネント描画"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "このコンポーネントの描画中にエラーが発生しました。詳細はコンソールを参照してください。"
@@ -637,7 +638,7 @@ msgstr "バーコード"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "スキャン"
@@ -679,7 +680,7 @@ msgstr "一致するアイテムは見つかりませんでした"
#: src/components/barcodes/BarcodeScanDialog.tsx:150
msgid "Barcode does not match the expected model type"
-msgstr ""
+msgstr "バーコードが想定されるモデルタイプと一致しません"
#: src/components/barcodes/BarcodeScanDialog.tsx:161
#: src/components/editors/NotesEditor.tsx:84
@@ -695,7 +696,7 @@ msgstr "成功"
#: src/components/barcodes/BarcodeScanDialog.tsx:167
msgid "Failed to handle barcode"
-msgstr ""
+msgstr "バーコードの処理に失敗しました"
#: src/components/barcodes/BarcodeScanDialog.tsx:183
#: src/pages/Index/Scan.tsx:129
@@ -798,12 +799,12 @@ msgstr "レポート印刷中"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "ラベルの印刷"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "印刷"
@@ -819,19 +820,19 @@ msgstr "印刷"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "印刷レポート"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "印刷アクション"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "ラベル印刷"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "印刷レポート"
@@ -860,8 +861,8 @@ msgstr "プロバイダーにリダイレクトされます。"
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "バーコードスキャナを開く"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -869,7 +870,7 @@ msgstr "スポットライトを開く"
#: src/components/buttons/StarredToggleButton.tsx:36
msgid "Subscription Updated"
-msgstr ""
+msgstr "サブスクリプション更新"
#: src/components/buttons/StarredToggleButton.tsx:57
#~ msgid "Unsubscribe from part"
@@ -920,7 +921,7 @@ msgstr "締め切り超過"
#: src/components/dashboard/DashboardLayout.tsx:282
msgid "Failed to load dashboard widgets."
-msgstr ""
+msgstr "ダッシュボードウィジェットの読み込みに失敗しました。"
#: src/components/dashboard/DashboardLayout.tsx:293
msgid "No Widgets Selected"
@@ -937,7 +938,7 @@ msgstr "レイアウトを受け入れる"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -957,7 +958,7 @@ msgstr "ウィジェットの削除"
#: src/components/dashboard/DashboardMenu.tsx:129
msgid "Clear Widgets"
-msgstr ""
+msgstr "ウィジェットを消去する"
#: src/components/dashboard/DashboardWidget.tsx:81
msgid "Remove this widget from the dashboard"
@@ -997,11 +998,11 @@ msgstr "登録済み部品カテゴリー数を表示"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:41
msgid "Invalid BOMs"
-msgstr ""
+msgstr "無効なBOM"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:42
msgid "Assemblies requiring bill of materials validation"
-msgstr ""
+msgstr "部品表の検証が必要なアセンブリ"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:53
#: src/tables/part/PartTable.tsx:263
@@ -1087,11 +1088,11 @@ msgstr "割り当てられた受注数を表示"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:129
#: src/pages/sales/SalesIndex.tsx:87
msgid "Pending Shipments"
-msgstr ""
+msgstr "保留中の出荷"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:131
msgid "Show the number of pending sales order shipments"
-msgstr ""
+msgstr "保留中のセールスオーダー出荷件数を表示する"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:136
msgid "Active Purchase Orders"
@@ -1237,11 +1238,11 @@ msgstr "このアイテムから関連画像を削除しますか?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "クリア"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "送信"
@@ -1399,7 +1400,7 @@ msgstr "コード"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:50
msgid "Error rendering preview"
-msgstr ""
+msgstr "プレビューの表示に失敗しました"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:120
msgid "Preview not available, click \"Reload Preview\"."
@@ -1452,7 +1453,7 @@ msgstr "プレビューは正常に更新されました。"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:236
msgid "An unknown error occurred while rendering the preview."
-msgstr ""
+msgstr "プレビューの表示中に予期せぬエラーが発生しました。"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263
#~ msgid "Save & Reload preview"
@@ -1579,21 +1580,21 @@ msgstr "ログイン成功"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "ログインに失敗しました"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "入力内容を確認し、もう一度やり直してください。"
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "メール送信成功"
@@ -1628,7 +1629,7 @@ msgstr "ユーザー名"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "パスワード"
@@ -1714,11 +1715,11 @@ msgstr "またはSSOを使用します。"
#: src/components/forms/AuthenticationForm.tsx:348
msgid "Registration not active"
-msgstr ""
+msgstr "登録が有効ではありません"
#: src/components/forms/AuthenticationForm.tsx:349
msgid "This might be related to missing mail settings or could be a deliberate decision."
-msgstr ""
+msgstr "これはメール設定の不足に関連している可能性もありますが、意図的な判断である可能性もあります。"
#: src/components/forms/HostOptionsForm.tsx:36
#: src/components/forms/HostOptionsForm.tsx:67
@@ -1732,7 +1733,7 @@ msgstr "ホスト"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API バージョン"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1852,15 +1854,15 @@ msgstr "実行中"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "アップロードするファイルを選択してください"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "提案された値を受け入れる"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "日付を選択"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
@@ -1892,7 +1894,7 @@ msgstr "{0} アイコン"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "読み込み中"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "加工データ"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "エラーが発生しました"
@@ -2002,31 +2004,31 @@ msgstr "列を選択するか、このフィールドを無視する場合は空
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "このフィールドを無視する"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "データ・カラムとデータベース・フィールドのマッピング"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "カラムマッピングの受け入れ"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "データベース・フィールド"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "フィールドの説明"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "インポートされた列"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "初期値"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "マップ列"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "データをインポート"
+msgid "Import Rows"
+msgstr "行をインポート"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2052,7 +2058,7 @@ msgstr "インポート完了"
#: src/components/importer/ImporterDrawer.tsx:89
msgid "Failed to fetch import session data"
-msgstr ""
+msgstr "セッションデータのインポート取得に失敗しました"
#: src/components/importer/ImporterDrawer.tsx:97
#~ msgid "Cancel import session"
@@ -2071,7 +2077,7 @@ msgstr "データは正常にインポートされました"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "閉じる"
@@ -2208,7 +2214,7 @@ msgstr "グループロールの更新中"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "ロール"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "表示"
@@ -2255,10 +2261,10 @@ msgstr "項目なし"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "リンク"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "ドキュメント"
@@ -2453,7 +2459,7 @@ msgstr "バックグラウンドワーカー"
#: src/components/modals/ServerInfoModal.tsx:107
msgid "The background worker process is not running"
-msgstr ""
+msgstr "バックグラウンドワーカープロセスは実行されていません"
#: src/components/modals/ServerInfoModal.tsx:107
#~ msgid "The Background worker process is not running."
@@ -2479,7 +2485,7 @@ msgstr "アラート"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "問題なし"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
@@ -2547,7 +2553,7 @@ msgstr "設定"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "ユーザー設定"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "システム設定"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "管理センター"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "ログアウト"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2664,7 +2670,7 @@ msgstr "概要"
#: src/components/nav/NavigationTree.tsx:212
msgid "Error loading navigation tree."
-msgstr ""
+msgstr "ナビゲーションツリーの読み込み中にエラーが発生しました。"
#: src/components/nav/NotificationDrawer.tsx:183
#: src/pages/Notifications.tsx:74
@@ -2681,7 +2687,7 @@ msgstr "未読の通知はありません。"
#: src/components/nav/NotificationDrawer.tsx:238
msgid "Error loading notifications."
-msgstr ""
+msgstr "通知の読み込み中にエラーが発生しました。"
#: src/components/nav/SearchDrawer.tsx:106
msgid "No Overview Available"
@@ -2705,7 +2711,7 @@ msgstr "検索グループの削除"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2776,15 +2782,15 @@ msgstr "メモ"
#: src/components/panels/PanelGroup.tsx:158
msgid "Plugin Provided"
-msgstr ""
+msgstr "プラグイン提供"
#: src/components/panels/PanelGroup.tsx:280
msgid "Collapse panels"
-msgstr ""
+msgstr "パネルを折りたたむ"
#: src/components/panels/PanelGroup.tsx:280
msgid "Expand panels"
-msgstr ""
+msgstr "パネルを展開する"
#: src/components/plugins/LocateItemButton.tsx:68
#: src/components/plugins/LocateItemButton.tsx:88
@@ -2819,7 +2825,7 @@ msgstr "プラグイン情報"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "発送"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "非アクティブ"
@@ -3001,7 +3007,7 @@ msgstr "在庫なし"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "注文中"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "カテゴリ"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "カテゴリ"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "場所"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "シリアル番号"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "シリアル番号"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "数量"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "スクール機能"
@@ -3117,15 +3122,15 @@ msgstr "スクール機能"
#: src/components/settings/ConfigValueList.tsx:36
msgid "Setting"
-msgstr ""
+msgstr "設定"
#: src/components/settings/ConfigValueList.tsx:39
msgid "Source"
-msgstr ""
+msgstr "ソース"
#: src/components/settings/QuickAction.tsx:47
msgid "Act"
-msgstr ""
+msgstr "実行(Act)"
#: src/components/settings/QuickAction.tsx:73
#: src/components/settings/QuickAction.tsx:113
@@ -3143,54 +3148,58 @@ msgstr "州の追加"
#: src/components/settings/QuickAction.tsx:85
msgid "Open an Issue"
-msgstr ""
+msgstr "報告を起票する"
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
-msgstr ""
+msgstr "バグを報告するか、GitHubで機能のリクエストをしてください"
#: src/components/settings/QuickAction.tsx:88
msgid "Open Issue"
-msgstr ""
+msgstr "未解決の問題"
#: src/components/settings/QuickAction.tsx:97
msgid "Add New Group"
-msgstr ""
+msgstr "新しいグループを追加"
#: src/components/settings/QuickAction.tsx:98
msgid "Create a new group to manage your users"
-msgstr ""
+msgstr "ユーザーを管理するための新しいグループを作成する"
#: src/components/settings/QuickAction.tsx:100
msgid "New Group"
-msgstr ""
+msgstr "新規グループ"
#: src/components/settings/QuickAction.tsx:105
msgid "Add New User"
-msgstr ""
+msgstr "新しいユーザーを追加"
#: src/components/settings/QuickAction.tsx:106
msgid "Create a new user to manage your groups"
-msgstr ""
+msgstr "グループを管理するための新しいユーザーを作成する"
#: src/components/settings/QuickAction.tsx:108
msgid "New User"
-msgstr ""
+msgstr "新しいユーザー"
#: src/components/settings/QuickAction.tsx:114
msgid "Create a new project code to organize your items"
-msgstr ""
+msgstr "アイテムを整理するための新しいプロジェクトコードを作成する"
#: src/components/settings/QuickAction.tsx:116
msgid "Add Code"
-msgstr ""
+msgstr "コードを追加"
#: src/components/settings/QuickAction.tsx:121
msgid "Add Custom State"
-msgstr ""
+msgstr "カスタム状態を追加"
#: src/components/settings/QuickAction.tsx:122
msgid "Create a new custom state for your workflow"
+msgstr "ワークフロー用に新しいカスタム状態を作成する"
+
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
msgstr ""
#: src/components/settings/SettingItem.tsx:47
@@ -3198,6 +3207,10 @@ msgstr ""
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "設定を編集"
@@ -3206,32 +3219,32 @@ msgstr "設定を編集"
msgid "Setting {key} updated successfully"
msgstr "設定 {key} が正常に更新されました"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "設定を更新しました。"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "設定 {0} が正常に更新されました"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "エラー編集設定"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
-msgstr ""
+msgstr "設定の読み込み中にエラーが発生しました"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
-msgstr ""
+msgstr "設定なし"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
-msgstr ""
+msgstr "設定可能な項目はありません"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "設定なし"
@@ -3593,15 +3606,15 @@ msgstr "設定なし"
#: src/components/wizards/ImportPartWizard.tsx:105
msgid "Exact Match"
-msgstr ""
+msgstr "完全に一致"
#: src/components/wizards/ImportPartWizard.tsx:112
msgid "Current part"
-msgstr ""
+msgstr "現在の部品"
#: src/components/wizards/ImportPartWizard.tsx:118
msgid "Already Imported"
-msgstr ""
+msgstr "既にインポート済み"
#: src/components/wizards/ImportPartWizard.tsx:205
#: src/pages/company/CompanyDetail.tsx:137
@@ -3626,107 +3639,107 @@ msgstr "読み込み中…"
#: src/components/wizards/ImportPartWizard.tsx:223
msgid "Error fetching suppliers"
-msgstr ""
+msgstr "サプライヤーの取得中にエラーが発生しました"
#: src/components/wizards/ImportPartWizard.tsx:224
msgid "Select supplier"
-msgstr ""
+msgstr "サプライヤーを選択"
#. placeholder {0}: searchResults.length
#: src/components/wizards/ImportPartWizard.tsx:246
msgid "Found {0} results"
-msgstr ""
+msgstr "{0} 件の結果が見つかりました"
#: src/components/wizards/ImportPartWizard.tsx:259
msgid "Import this part"
-msgstr ""
+msgstr "この部品をインポートする"
#: src/components/wizards/ImportPartWizard.tsx:313
msgid "Are you sure you want to import this part into the selected category now?"
-msgstr ""
+msgstr "この部品を今すぐ選択したカテゴリにインポートしてもよろしいですか?"
#: src/components/wizards/ImportPartWizard.tsx:326
msgid "Import Now"
-msgstr ""
+msgstr "今すぐインポートします"
#: src/components/wizards/ImportPartWizard.tsx:372
msgid "Select and edit the parameters you want to add to this part."
-msgstr ""
+msgstr "この部品に追加したいパラメータを選択して編集してください。"
#: src/components/wizards/ImportPartWizard.tsx:379
msgid "Default category parameters"
-msgstr ""
+msgstr "デフォルトカテゴリパラメータ"
#: src/components/wizards/ImportPartWizard.tsx:391
msgid "Other parameters"
-msgstr ""
+msgstr "その他のパラメータ"
#: src/components/wizards/ImportPartWizard.tsx:446
msgid "Add a new parameter"
-msgstr ""
+msgstr "新しいパラメータを追加する"
#: src/components/wizards/ImportPartWizard.tsx:468
msgid "Skip"
-msgstr ""
+msgstr "スキップ"
#: src/components/wizards/ImportPartWizard.tsx:476
msgid "Create Parameters"
-msgstr ""
+msgstr "パラメータを作成する"
#: src/components/wizards/ImportPartWizard.tsx:493
msgid "Create initial stock for the imported part."
-msgstr ""
+msgstr "インポートした部品の初期在庫を作成する。"
#: src/components/wizards/ImportPartWizard.tsx:511
msgid "Next"
-msgstr ""
+msgstr "次へ"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "パーツを編集"
#: src/components/wizards/ImportPartWizard.tsx:567
msgid "Part imported successfully!"
-msgstr ""
+msgstr "部品のインポートに成功しました!"
#: src/components/wizards/ImportPartWizard.tsx:576
msgid "Failed to import part: "
-msgstr ""
+msgstr "部品のインポートに失敗しました:"
#: src/components/wizards/ImportPartWizard.tsx:641
msgid "Are you sure, you want to import the supplier and manufacturer part into this part?"
-msgstr ""
+msgstr "この部品にサプライヤーとメーカーの部品をインポートしてもよろしいですか?"
#: src/components/wizards/ImportPartWizard.tsx:655
msgid "Import"
-msgstr ""
+msgstr "インポート"
#: src/components/wizards/ImportPartWizard.tsx:692
msgid "Parameters created successfully!"
-msgstr ""
+msgstr "パラメータの作成に成功しました!"
#: src/components/wizards/ImportPartWizard.tsx:720
msgid "Failed to create parameters, please fix the errors and try again"
-msgstr ""
+msgstr "パラメータの作成に失敗しました。エラーを修正して再度 試してください。"
#. placeholder {0}: supplierPart?.supplier
#: src/components/wizards/ImportPartWizard.tsx:740
msgid "Part imported successfully from supplier {0}."
-msgstr ""
+msgstr "部品がサプライヤー{0}から正常にインポートされました。"
#: src/components/wizards/ImportPartWizard.tsx:753
msgid "Open Part"
-msgstr ""
+msgstr "部品の詳細を表示"
#: src/components/wizards/ImportPartWizard.tsx:760
msgid "Open Supplier Part"
-msgstr ""
+msgstr "サプライヤー部品の詳細を表示"
#: src/components/wizards/ImportPartWizard.tsx:767
msgid "Open Manufacturer Part"
-msgstr ""
+msgstr "メーカー部品の詳細を表示"
#: src/components/wizards/ImportPartWizard.tsx:797
#: src/tables/part/PartTable.tsx:499
@@ -3735,48 +3748,48 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:803
msgid "Import Supplier Part"
-msgstr ""
+msgstr "サプライヤー部品をインポート"
#: src/components/wizards/ImportPartWizard.tsx:805
msgid "Search Supplier Part"
-msgstr ""
+msgstr "サプライヤー部品を検索"
#: src/components/wizards/ImportPartWizard.tsx:807
msgid "Confirm import"
-msgstr ""
+msgstr "インポートを確認"
#: src/components/wizards/ImportPartWizard.tsx:809
msgid "Done"
-msgstr ""
+msgstr "完了"
#: src/components/wizards/OrderPartsWizard.tsx:75
msgid "Error fetching part requirements"
-msgstr ""
+msgstr "部品要件の取得中にエラーが発生しました"
#: src/components/wizards/OrderPartsWizard.tsx:113
msgid "Requirements"
-msgstr ""
+msgstr "AIT テーマ要件チェック"
#: src/components/wizards/OrderPartsWizard.tsx:117
msgid "Build Requirements"
-msgstr ""
+msgstr "ビルド要件"
#: src/components/wizards/OrderPartsWizard.tsx:123
msgid "Sales Requirements"
-msgstr ""
+msgstr "販売要件"
#: src/components/wizards/OrderPartsWizard.tsx:129
#: src/forms/StockForms.tsx:894
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -3819,7 +3832,7 @@ msgstr "サプライヤー部品の選択"
#: src/components/wizards/OrderPartsWizard.tsx:323
msgid "Copy supplier part number"
-msgstr ""
+msgstr "サプライヤー部品番号をコピー"
#: src/components/wizards/OrderPartsWizard.tsx:326
msgid "New supplier part"
@@ -4038,77 +4051,81 @@ msgstr "パーツの注文"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "InvenTreeのダッシュボードに移動します。"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "InvenTreeの詳細については、ドキュメントをご覧ください。"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "InvenTree orgについて"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "サーバー情報"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "このInvenTreeインスタンスについて"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "有効にすると、プラグインを削除しているときに、ライセンス情報を含むデータベース (ロールデータを除く) からこのプラグインに関連するすべてのデータを削除します。この場合、ライセンスは自動的に非アクティブ化されません"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "サービスの依存関係のライセンス"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "ナビゲーションを開く"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "メインナビゲーションメニューを開く"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "バーコードまたはQRコードをスキャンする"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
-msgstr ""
+msgstr "ユーザー設定に移動してください"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
-msgstr ""
+msgstr "発注書へ移動"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
-msgstr ""
+msgstr "セールスオーダーへ移動"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
-msgstr ""
+msgstr "返品オーダーへ移動"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
-msgstr ""
+msgstr "ビルドオーダーへ移動"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
-msgstr ""
+msgstr "システム設定へ移動"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "管理センターへ"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "InvenTreeプラグインを管理する"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4350,19 +4367,19 @@ msgstr "InvenTreeプロジェクトについて"
#: src/forms/BomForms.tsx:109
msgid "Substitute Part"
-msgstr ""
+msgstr "代替部品"
#: src/forms/BomForms.tsx:126
msgid "Edit BOM Substitutes"
-msgstr ""
+msgstr "BOM代替品編集"
#: src/forms/BomForms.tsx:133
msgid "Add Substitute"
-msgstr ""
+msgstr "代替品を追加"
#: src/forms/BomForms.tsx:134
msgid "Substitute added"
-msgstr ""
+msgstr "代替品を追加した"
#: src/forms/BuildForms.tsx:112
#: src/forms/BuildForms.tsx:217
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "ビルド出力"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
-msgstr ""
+msgstr "完了数量"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "ステータス"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "完全なビルド出力"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "ビルドアウトプット完了"
@@ -4428,24 +4445,24 @@ msgstr "ビルドアウトプット完了"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
-msgstr ""
+msgstr "廃棄数量"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "スクラップビルドの出力"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
-msgstr ""
+msgstr "選択されたビルド出力は完了しますが、廃棄済みとしてマークされます。"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
-msgstr ""
+msgstr "割り当てられた在庫品は消費されます"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "ビルド出力は廃止"
@@ -4453,24 +4470,24 @@ msgstr "ビルド出力は廃止"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "ビルド出力のキャンセル"
-#: src/forms/BuildForms.tsx:489
-msgid "Selected build outputs will be removed"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:491
-msgid "Allocated stock items will be returned to stock"
-msgstr ""
-
#: src/forms/BuildForms.tsx:498
+msgid "Selected build outputs will be removed"
+msgstr "選択されたビルド出力は削除されます"
+
+#: src/forms/BuildForms.tsx:500
+msgid "Allocated stock items will be returned to stock"
+msgstr "割り当てられた在庫品は、在庫に戻されます。"
+
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "ビルドアウトプットはキャンセルされました"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "ビルドアウトプットはキャンセルされました"
msgid "IPN"
msgstr "即時支払通知"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "割り当てられた"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "ソース・ロケーション"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "在庫配分のソースの場所を選択します。"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr "在庫配分のソースの場所を選択します。"
msgid "Allocate Stock"
msgstr "株式の割当"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "割り当てられた在庫品目"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr "在庫を消費する"
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr "引き当て済み在庫"
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
-msgstr ""
+msgstr "完全に消費されました"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4566,14 +4583,18 @@ msgstr "消費済み"
#: src/forms/ReturnOrderForms.tsx:138
#: src/forms/SalesOrderForms.tsx:185
msgid "Select project code for this line item"
-msgstr ""
+msgstr "この明細行のプロジェクトコードを選択してください"
#: src/forms/CompanyForms.tsx:150
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "登録済み"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "このパーツの通知を受け取る"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "親部品カテゴリー"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "このカテゴリの通知を受け取る"
@@ -4690,8 +4707,8 @@ msgstr "入荷済みの在庫がある店舗"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4770,33 +4787,33 @@ msgstr "入荷した商品"
#: src/forms/SalesOrderForms.tsx:210
#: src/tables/sales/SalesOrderShipmentTable.tsx:215
msgid "Check Shipment"
-msgstr ""
+msgstr "出荷状況を確認する"
#: src/forms/SalesOrderForms.tsx:211
msgid "Marking the shipment as checked indicates that you have verified that all items included in this shipment are correct"
-msgstr ""
+msgstr "「確認済み」とマークすることで、全送付品の照合が完了したことを示します"
#: src/forms/SalesOrderForms.tsx:221
msgid "Shipment marked as checked"
-msgstr ""
+msgstr "出荷はチェック済みとしてマークされました"
#: src/forms/SalesOrderForms.tsx:236
#: src/forms/SalesOrderForms.tsx:238
#: src/tables/sales/SalesOrderShipmentTable.tsx:228
msgid "Uncheck Shipment"
-msgstr ""
+msgstr "出荷のチェックを外す"
#: src/forms/SalesOrderForms.tsx:239
msgid "Marking the shipment as unchecked indicates that the shipment requires further verification"
-msgstr ""
+msgstr "チェックを外すと、出荷時に再確認が必要になります"
#: src/forms/SalesOrderForms.tsx:249
msgid "Shipment marked as unchecked"
-msgstr ""
+msgstr "出荷はチェックが外された"
#: src/forms/SalesOrderForms.tsx:480
msgid "Leave blank to use the order address"
-msgstr ""
+msgstr "オーダーの住所を使用する場合は空欄のままにしてください"
#: src/forms/StockForms.tsx:110
#~ msgid "Create Stock Item"
@@ -4854,147 +4871,147 @@ msgstr "戻る"
msgid "Count"
msgstr "カウント"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "在庫追加"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "在庫追加"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
-msgstr ""
+msgstr "選択された在庫品の数量を、指定された数量だけ増やします。"
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "在庫の削除"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "在庫一掃"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
-msgstr ""
+msgstr "選択された在庫品の数量を、指定された数量分だけ減らします。"
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "株式譲渡"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "株式譲渡"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
-msgstr ""
+msgstr "選択されたアイテムを指定された場所に移動します。"
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
-msgstr ""
+msgstr "在庫戻し"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
-msgstr ""
+msgstr "在庫が戻りました"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
-msgstr ""
+msgstr "選択された商品を、指定された場所へ在庫に戻してください。"
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "在庫数"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "在庫数"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
-msgstr ""
+msgstr "選択された在庫品目を数え、それに応じて数量を調整してください。"
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "在庫状況の変更"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "在庫状況の変更"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
-msgstr ""
+msgstr "選択された在庫品のステータスを変更します。"
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "株式の併合"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "株式併合"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
-msgstr ""
+msgstr "在庫品を合算する"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
-msgstr ""
+msgstr "合算操作は元に戻せません"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
-msgstr ""
+msgstr "在庫品を合算する際、追跡情報が失われる可能性があります。"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
-msgstr ""
+msgstr "在庫品を合算する際、サプライヤー情報が失われる可能性があります。"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "顧客への在庫割り当て"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "顧客に割り当てられた在庫"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "在庫アイテムの削除"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "ストック削除"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
-msgstr ""
+msgstr "この操作により、選択された在庫品目が完全に削除されます。"
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "親株式所在地"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
-msgstr ""
+msgstr "シリアル番号を探す"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
-msgstr ""
+msgstr "該当する品目はありません"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
-msgstr ""
+msgstr "複数の品目が見つかりました"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
-msgstr ""
+msgstr "サーバーからの応答が無効です"
#: src/forms/selectionListFields.tsx:95
msgid "Entries"
@@ -5062,99 +5079,110 @@ msgstr "内部サーバーエラー"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "ログイン済み"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "このブラウザのセッションがサーバー上で競合しています。まずそちらからログアウトしてください。"
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "ログアウト"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "サーバーからの応答がありません。"
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
-msgstr ""
+msgstr "多要素認証ログインに成功しました"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
-msgstr ""
+msgstr "多要素認証の詳細情報はブラウザに自動的に記録されました"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "ログアウト"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "ログアウトに成功しました"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "言語変更"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "アクティブ言語がプロフィールで設定した言語に変更されました。"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "テーマ変更"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "アクティブなテーマがプロフィールで設定したものに変更されました。"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "リセットのリンクを受信トレイでご確認ください。これはアカウントを持っている場合にのみ機能します。迷惑メールもチェックしてください。"
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "リセット失敗"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "ログイン済み"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "このブラウザのセッションがサーバー上で競合しています。まずそちらからログアウトしてください。"
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "ログイン中"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "ログインに成功しました"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "MFAの設定に失敗しました"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "パスワード設定"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "パスワードは正常に設定されました。新しいパスワードでログインできます。"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "パスワードを変更できませんでした"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "2つのパスワードフィールドが一致しませんでした"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "パスワードが変更されました"
@@ -5210,11 +5238,11 @@ msgstr "リクエストがタイムアウトしました"
msgid "Exporting Data"
msgstr "データエクスポート中"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "エクスポートデータ"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "エクスポート"
@@ -5257,50 +5285,50 @@ msgstr "このアイテムを削除してもよろしいですか?"
#: src/hooks/UseStockAdjustActions.tsx:100
msgid "Count selected stock items"
-msgstr ""
+msgstr "選択された在庫品目を数える"
#: src/hooks/UseStockAdjustActions.tsx:110
msgid "Add to selected stock items"
-msgstr ""
+msgstr "選択された在庫品に追加します"
#: src/hooks/UseStockAdjustActions.tsx:120
msgid "Remove from selected stock items"
-msgstr ""
+msgstr "選択された在庫品から削除します"
#: src/hooks/UseStockAdjustActions.tsx:130
msgid "Transfer selected stock items"
-msgstr ""
+msgstr "選択された在庫品目を移動します"
#: src/hooks/UseStockAdjustActions.tsx:140
msgid "Merge selected stock items"
-msgstr ""
+msgstr "選択された在庫商品を合算します"
#: src/hooks/UseStockAdjustActions.tsx:150
msgid "Change status of selected stock items"
-msgstr ""
+msgstr "選択された在庫品のステータスを変更します"
#: src/hooks/UseStockAdjustActions.tsx:158
msgid "Assign Stock"
-msgstr ""
+msgstr "在庫品を割り当てる"
#: src/hooks/UseStockAdjustActions.tsx:160
msgid "Assign selected stock items to a customer"
-msgstr ""
+msgstr "選択された在庫品を顧客に割り当てます"
#: src/hooks/UseStockAdjustActions.tsx:170
msgid "Return selected items into stock"
-msgstr ""
+msgstr "選択された在庫品を在庫に戻します"
#: src/hooks/UseStockAdjustActions.tsx:178
msgid "Delete Stock"
-msgstr ""
+msgstr "在庫を削除する"
#: src/hooks/UseStockAdjustActions.tsx:180
msgid "Delete selected stock items"
-msgstr ""
+msgstr "選択された在庫品を削除します"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "ストックアクション"
@@ -5383,26 +5411,26 @@ msgstr "アカウントをお持ちですか?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "多要素認証"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTPコード"
#: src/pages/Auth/MFA.tsx:35
msgid "Enter one of your codes: {mfa_types}"
-msgstr ""
+msgstr "コードのいずれかを入力してください:{mfa_types}"
#: src/pages/Auth/MFA.tsx:42
msgid "Remember this device"
-msgstr ""
+msgstr "このデバイスを記憶する"
#: src/pages/Auth/MFA.tsx:44
msgid "If enabled, you will not be asked for MFA on this device for 30 days."
-msgstr ""
+msgstr "有効した場合、このデバイスでは30日間、多要素認証の入力は求められません"
#: src/pages/Auth/MFA.tsx:53
msgid "Log in"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "位置"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "タイプ"
@@ -5933,222 +5961,222 @@ msgstr "プロフィールを編集"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
-msgstr ""
+msgstr "再認証が成功しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
-msgstr ""
+msgstr "再認証が成功しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
-msgstr ""
+msgstr "再認証中にエラーが発生しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
-msgstr ""
+msgstr "再認証に失敗しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
-msgid "Reauthenticate"
-msgstr ""
+msgstr "再認証に失敗しました"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
-msgid "Reauthentiction is required to continue."
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
+msgid "Reauthenticate"
+msgstr "認証"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
+msgid "Reauthentiction is required to continue."
+msgstr "続行するには再認証が必要です"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "パスワードを入力してください"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
-msgstr ""
+msgstr "ワンタイムパスワードを入力してください"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
-msgstr ""
+msgstr "WebAuthnの認証情報が削除されました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
-msgstr ""
+msgstr "WebAuthnの認証情報が正常に削除されました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
-msgstr ""
+msgstr "WebAuthn認証情報の削除に失敗しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
-msgstr ""
+msgstr "WebAuthnの認証情報を削除します"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
-msgstr ""
+msgstr "削除を確認します"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
-msgstr ""
+msgstr "Web認証情報の削除を確認してください"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
-msgstr ""
+msgstr "ワンタイムパスワードは削除されました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
-msgstr ""
+msgstr "ワンタイムパスワードトークンは正常に削除されました。"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
-msgstr ""
+msgstr "ワンタイムパスワードトークンの削除に失敗しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
-msgstr ""
+msgstr "ワンタイムパスワードトークンを削除します"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
-msgstr ""
+msgstr "ワンタイムパスワードコードの削除を確認してください"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
-msgstr ""
+msgstr "ワンタイムパスワードは既に登録済みです"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
-msgstr ""
+msgstr "このアカウントには既にワンタイムパスワードトークンが登録されています"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
-msgstr ""
+msgstr "ワンタイムパスワード登録の取得中にエラーが発生しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
-msgstr ""
+msgstr "ワンタイムパスワード登録データの取得中に予期せぬエラーが発生しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
-msgstr ""
+msgstr "ワンタイムパスワード登録済み"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
-msgstr ""
+msgstr "ワンタイムパスワードトークンの登録が成功しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "TOTPトークンの登録エラー"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "TOTPトークンの登録"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
-msgstr ""
+msgstr "復旧コードの取得に失敗しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "回復コード"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
-msgstr ""
+msgstr "以下の一時復旧コードが利用できます"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
-msgid "No Unused Codes"
-msgstr ""
+msgstr "復旧コードをクリップボードにコピーします"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+msgid "No Unused Codes"
+msgstr "未使用のコードはありません"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
-msgid "WebAuthn Registered"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
-msgid "WebAuthn credential registered successfully"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
-msgid "Error registering WebAuthn credential"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
-msgid "WebAuthn Registration Failed"
-msgstr ""
+msgstr "利用可能な復旧コードはありません"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+msgid "WebAuthn Registered"
+msgstr "WebAuthn登録済み"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
+msgid "WebAuthn credential registered successfully"
+msgstr "WebAuthnの認証情報が正常に登録されました"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
+msgid "Error registering WebAuthn credential"
+msgstr "WebAuthn認証情報の登録中にエラーが発生しました"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
+msgid "WebAuthn Registration Failed"
+msgstr "WebAuthnの登録が失敗しました"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
-msgstr ""
+msgstr "WebAuthn認証情報の登録に失敗しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
-msgstr ""
+msgstr "WebAuthn登録の取得中にエラーが発生しました"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "時間ベースのワンタイムパスワード(TOTP)"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "事前に生成された1回限りのリカバリーコード"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
-msgstr ""
+msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
-msgstr ""
+msgstr "Web認証(WebAuthn)は、安全な認証のためのウェブ標準です。"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "最終使用"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "作成"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "未構成"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "このアカウントには多要素トークンが設定されていません。"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
-msgstr ""
+msgstr "登録認証方法"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
-msgstr ""
+msgstr "多要素認証は利用できません"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
-msgstr ""
+msgstr "設定可能な多要素認証方式はありません"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:27
msgid "Secret"
@@ -6162,47 +6190,47 @@ msgstr "ワンタイムパスワード"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "TOTPコードを入力し、正しく登録されていることを確認します。"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "E メールアドレス"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E メールアドレス"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "シングルサインオン"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "有効になっていません"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "このサーバーではシングルサインオンが有効になっていません"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "有効になっていません"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "このサーバーではシングルサインオンが有効になっていません"
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "アクセス・トークン"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
-msgstr ""
+msgstr "セッション情報"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "タイムスタンプ"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
-msgstr ""
+msgstr "方法"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "メール更新時のエラー"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "現在、メールアドレスは登録されていません。"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "以下のメールアドレスがアカウントに関連付けられています:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "プライマリー"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "承認済み"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "未承認"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "メインに指定"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "検証の再送信"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "メールアドレスの追加"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "メールアドレス"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "電子メールアドレス"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "メール追加時のエラー"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "メールアドレスの追加"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "メールアドレス"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "電子メールアドレス"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "メール追加時のエラー"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "メールアドレスを追加"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "メール追加時のエラー"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "メールアドレスを追加"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "このアカウントに接続されているプロバイダーはありません。"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "以下のプロバイダーのいずれかを使用してアカウントにサインインできます。"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "プロバイダーリンクの削除"
@@ -6450,7 +6478,7 @@ msgstr "基準通貨"
#: src/pages/Index/Settings/AdminCenter/EmailManagementPanel.tsx:13
msgid "Email Messages"
-msgstr ""
+msgstr "メールメッセージ"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:22
#~ msgid "Active Alerts"
@@ -6462,27 +6490,27 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:36
msgid "System Status"
-msgstr ""
+msgstr "システム状態"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:47
msgid "Admin Center Information"
-msgstr ""
+msgstr "管理センター情報"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:53
msgid "The home panel (and the whole Admin Center) is a new feature starting with the new UI and was previously (before 1.0) not available."
-msgstr ""
+msgstr "ホームパネル(および管理センター全体)は、新しいUIから導入された新機能であり、以前のバージョン(1.0以前)では利用できません"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:60
msgid "The admin center provides a centralized location for all administration functionality and is meant to replace all interaction with the (django) backend admin interface."
-msgstr ""
+msgstr "管理センターは、すべての管理機能を集中管理する場所を提供し、(Django) バックエンド管理インターフェースとのすべてのやり取りに取って代わることを目的としています"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:67
msgid "Please open feature requests (after checking the tracker) for any existing backend admin functionality you are missing in this UI. The backend admin interface should be used carefully and seldom."
-msgstr ""
+msgstr "このUIで不足している既存のバックエンド管理機能については、トラッカーを確認の上、機能リクエストを開設してください。バックエンド管理インターフェースは慎重に利用し、使用頻度は最小限に留めるべきです。"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:85
msgid "Quick Actions"
-msgstr ""
+msgstr "クイックアクション"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:107
#~ msgid "User Management"
@@ -6490,11 +6518,11 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:115
msgid "Home"
-msgstr ""
+msgstr "ホーム"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:122
msgid "Users / Access"
-msgstr ""
+msgstr "ユーザー/アクセス"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:127
#~ msgid "Templates"
@@ -6563,11 +6591,11 @@ msgstr "機械"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:247
msgid "Operations"
-msgstr ""
+msgstr "操作"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:259
msgid "Data Management"
-msgstr ""
+msgstr "データ管理"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:270
#: src/pages/Index/Settings/SystemSettings.tsx:176
@@ -6577,11 +6605,11 @@ msgstr "レポート"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:275
msgid "PLM"
-msgstr ""
+msgstr "PLM"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:285
msgid "Extend / Integrate"
-msgstr ""
+msgstr "拡張/統合"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:299
msgid "Advanced Options"
@@ -6601,7 +6629,7 @@ msgstr "高度なオプション"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:60
msgid "Machine Drivers"
-msgstr ""
+msgstr "機器制御ソフトウェア"
#: src/pages/Index/Settings/AdminCenter/MachineManagementPanel.tsx:62
#~ msgid "There are no machine registry errors."
@@ -6671,7 +6699,7 @@ msgstr "ランドスケープ"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:25
msgid "Merge"
-msgstr ""
+msgstr "統合"
#: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:31
msgid "Attach to Model"
@@ -6770,7 +6798,7 @@ msgstr "トークン"
#: src/pages/Index/Settings/PluginSettingsGroup.tsx:99
msgid "The settings below are specific to each available plugin"
-msgstr ""
+msgstr "以下の設定は、利用可能な各プラグインごとに固有のものになります"
#: src/pages/Index/Settings/SystemSettings.tsx:78
msgid "Authentication"
@@ -6791,7 +6819,7 @@ msgstr "バーコード"
#: src/pages/Index/Settings/SystemSettings.tsx:128
#: src/pages/Index/Settings/UserSettings.tsx:113
msgid "The settings below are specific to each available notification method"
-msgstr ""
+msgstr "以下の設定は、各通知方法ごとに固有のものになります"
#: src/pages/Index/Settings/SystemSettings.tsx:134
msgid "Pricing"
@@ -6855,15 +6883,15 @@ msgstr "未読にする"
#: src/pages/build/BuildDetail.tsx:70
msgid "No Required Items"
-msgstr ""
+msgstr "必須品目はありません"
#: src/pages/build/BuildDetail.tsx:72
msgid "This build order does not have any required items."
-msgstr ""
+msgstr "このビルドオーダーには必須品目はありません"
#: src/pages/build/BuildDetail.tsx:73
msgid "The assembled part may not have a Bill of Materials (BOM) defined, or the BOM is empty."
-msgstr ""
+msgstr "組み立てられた部品には部品表(BOM)が定義されていないか、BOMが空である可能性があります。"
#: src/pages/build/BuildDetail.tsx:80
#~ msgid "Build Status"
@@ -6921,7 +6949,7 @@ msgstr "カスタムステータス"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7032,7 +7060,7 @@ msgstr "詳細"
#: src/pages/build/BuildDetail.tsx:417
msgid "Required Parts"
-msgstr ""
+msgstr "必要な部品"
#: src/pages/build/BuildDetail.tsx:429
#: src/pages/sales/SalesOrderDetail.tsx:408
@@ -7051,14 +7079,14 @@ msgstr "不完全なアウトプット"
#: src/pages/build/BuildDetail.tsx:490
msgid "External Orders"
-msgstr ""
+msgstr "外部からのオーダー"
#: src/pages/build/BuildDetail.tsx:504
msgid "Child Build Orders"
msgstr "チャイルド・ビルド・オーダー"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7209,7 +7237,7 @@ msgstr "組立注文"
#: src/pages/build/BuildIndex.tsx:35
#: src/tables/build/BuildOrderTable.tsx:184
msgid "Show external build orders"
-msgstr ""
+msgstr "外部ビルドオーダーを表示します"
#: src/pages/build/BuildIndex.tsx:39
#~ msgid "New Build Order"
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "テーブルビュー"
@@ -7245,8 +7274,9 @@ msgstr "カレンダービュー"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
-msgstr ""
+msgstr "パラメトリックビュー"
#: src/pages/company/CompanyDetail.tsx:100
msgid "Website"
@@ -7262,7 +7292,7 @@ msgstr "メールアドレス"
#: src/pages/company/CompanyDetail.tsx:122
msgid "Tax ID"
-msgstr ""
+msgstr "納税者番号"
#: src/pages/company/CompanyDetail.tsx:132
msgid "Default Currency"
@@ -7349,7 +7379,7 @@ msgstr "外部リンク"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "部品詳細"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "サプライヤー部品の追加"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "在庫切れ"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "基本ユーザー"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "サブカテゴリ"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "項目を親カテゴリに移動"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "アイテムの削除"
@@ -7599,7 +7629,7 @@ msgstr "このアセンブリの部品表を検証しますか?"
#: src/pages/part/PartDetail.tsx:187
msgid "Bill of materials scheduled for validation"
-msgstr ""
+msgstr "検証待ち部品表"
#: src/pages/part/PartDetail.tsx:187
#~ msgid "BOM validated"
@@ -7607,32 +7637,32 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:205
msgid "BOM Validated"
-msgstr ""
+msgstr "部品表の検証が完了しました"
#: src/pages/part/PartDetail.tsx:206
msgid "The Bill of Materials for this part has been validated"
-msgstr ""
+msgstr "この部品の部品表は検証済みです"
#: src/pages/part/PartDetail.tsx:210
#: src/pages/part/PartDetail.tsx:215
msgid "BOM Not Validated"
-msgstr ""
+msgstr "BOMが未検証です"
#: src/pages/part/PartDetail.tsx:211
msgid "The Bill of Materials for this part has previously been checked, but requires revalidation"
-msgstr ""
+msgstr "この部品の部品表は既にチェック済みですが、再検証が必要となります。"
#: src/pages/part/PartDetail.tsx:216
msgid "The Bill of Materials for this part has not yet been validated"
-msgstr ""
+msgstr "この部品の部品表はまだ検証されていません"
#: src/pages/part/PartDetail.tsx:247
msgid "Validated On"
-msgstr ""
+msgstr "検証日時"
#: src/pages/part/PartDetail.tsx:252
msgid "Validated By"
-msgstr ""
+msgstr "検証者"
#: src/pages/part/PartDetail.tsx:286
#~ msgid "Variant Stock"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "売却可能部分"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "作成者"
msgid "Default Supplier"
msgstr "デフォルト・サプライヤー"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
-msgstr ""
+msgstr "デフォルトの有効期限"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
-msgstr ""
+msgstr "日"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "料金帯"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "最新のシリアル番号"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "部品リビジョンの選択"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "バリアント"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "割り当て"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "部品表"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "中古"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "部品価格"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "テストテンプレート"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "関連部品"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "部品がロックされています"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "パートがロックされているため、パートパラメータを編集できません。"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "パートがロックされているため、パートパラメータを編集できません。"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "必須"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
-msgstr ""
+msgstr "不足数"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "部品追加"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "削除部分"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "この部分の削除は元に戻せません"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "注文"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "注文在庫"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
-msgstr ""
+msgstr "シリアル番号で検索"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "パートアクション"
@@ -8008,8 +8038,8 @@ msgstr "最大値は"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "最大値は"
msgid "Total Price"
msgstr "合計金額"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "コンポーネント"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "最小価格"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "最大価格"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "最大価格"
msgid "Unit Price"
msgstr "単価"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "円グラフ"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "棒グラフ"
@@ -8334,13 +8364,13 @@ msgstr "得意先参照"
#: src/pages/sales/ReturnOrderDetail.tsx:196
msgid "Return Address"
-msgstr ""
+msgstr "住所"
#: src/pages/sales/ReturnOrderDetail.tsx:202
#: src/pages/sales/SalesOrderDetail.tsx:195
#: src/pages/sales/SalesOrderShipmentDetail.tsx:179
msgid "Not specified"
-msgstr ""
+msgstr "指定なし"
#: src/pages/sales/ReturnOrderDetail.tsx:349
#~ msgid "Order canceled"
@@ -8379,7 +8409,7 @@ msgstr "完了した出荷"
#: src/pages/sales/SalesOrderDetail.tsx:189
#: src/pages/sales/SalesOrderShipmentDetail.tsx:168
msgid "Shipping Address"
-msgstr ""
+msgstr "配送先住所"
#: src/pages/sales/SalesOrderDetail.tsx:317
msgid "Edit Sales Order"
@@ -8447,11 +8477,11 @@ msgstr "割当項目"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:194
msgid "Checked By"
-msgstr ""
+msgstr "チェック者"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:200
msgid "Not checked"
-msgstr ""
+msgstr "未確認"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:206
#: src/tables/ColumnRenderers.tsx:518
@@ -8500,11 +8530,11 @@ msgstr "処理待ち"
#: src/tables/sales/SalesOrderShipmentTable.tsx:168
#: src/tables/sales/SalesOrderShipmentTable.tsx:299
msgid "Checked"
-msgstr ""
+msgstr "チェック済み"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:351
msgid "Not Checked"
-msgstr ""
+msgstr "未選択"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:357
#: src/tables/sales/SalesOrderShipmentTable.tsx:175
@@ -8529,108 +8559,108 @@ msgstr "出荷アクション"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:410
msgid "Check"
-msgstr ""
+msgstr "チェック"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:411
msgid "Mark shipment as checked"
-msgstr ""
+msgstr "出荷を確認済みとしてマークしてください"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:417
msgid "Uncheck"
-msgstr ""
+msgstr "未確認"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:418
msgid "Mark shipment as unchecked"
-msgstr ""
+msgstr "出荷を確認待ちとしてマークしてください"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "親の位置"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "サブロケーション"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "ロケーションタイプ"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "トップレベルの在庫ロケーション"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "場所の詳細"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "デフォルトパーツ"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "在庫場所の編集"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "アイテムを親の場所に移動"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "在庫場所の削除"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "アクション"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "この場所にある在庫品に対する措置"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
-msgstr ""
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "在庫場所の編集"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "アイテムを親の場所に移動"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "在庫場所の削除"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "アクション"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "この場所にある在庫品に対する措置"
+
+#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr "在庫場所の一括操作"
+
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "この場所の子供のための行動"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
-msgstr ""
+msgstr "在庫品のスキャン"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
-msgstr ""
+msgstr "在庫品を在庫場所に置いてスキャンしました"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
-msgstr ""
+msgstr "在庫品のスキャン中にエラーが発生しました"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
-msgstr ""
+msgstr "在庫場所をスキャンしてください"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
-msgstr ""
+msgstr "在庫場所に置いて、場所のスキャンをしました"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
-msgstr ""
+msgstr "在庫場所のスキャン中にエラーが発生しました"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "ロケーションアクション"
@@ -8657,7 +8687,7 @@ msgstr "ベース部"
#: src/pages/stock/StockDetail.tsx:206
msgid "Previous serial number"
-msgstr ""
+msgstr "以前のシリアル番号"
#: src/pages/stock/StockDetail.tsx:217
#~ msgid "Delete stock item"
@@ -8665,7 +8695,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:228
msgid "Find serial number"
-msgstr ""
+msgstr "シリアル番号を探す"
#: src/pages/stock/StockDetail.tsx:234
msgid "Next serial number"
@@ -8740,11 +8770,11 @@ msgstr "在庫商品を編集"
#: src/pages/stock/StockDetail.tsx:703
msgid "Items Created"
-msgstr ""
+msgstr "作成された在庫品"
#: src/pages/stock/StockDetail.tsx:704
msgid "Created {n} stock items"
-msgstr ""
+msgstr "{n}個の在庫品を作成しました"
#: src/pages/stock/StockDetail.tsx:721
msgid "Delete Stock Item"
@@ -8773,15 +8803,15 @@ msgstr "シリアル化された在庫品"
#: src/pages/stock/StockDetail.tsx:794
msgid "Scan Into Location"
-msgstr ""
+msgstr "在庫場所に置いてスキャンしてください"
#: src/pages/stock/StockDetail.tsx:852
msgid "Scan into location"
-msgstr ""
+msgstr "在庫場所に置いてスキャンしてください"
#: src/pages/stock/StockDetail.tsx:854
msgid "Scan this item into a location"
-msgstr ""
+msgstr "在庫場所に置いてこの在庫品をスキャンしてください"
#: src/pages/stock/StockDetail.tsx:866
msgid "Stock Operations"
@@ -8917,8 +8947,9 @@ msgstr "シリアル番号のある商品を表示"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
-msgstr ""
+msgstr "シリアル"
#: src/tables/Filter.tsx:109
msgid "Filter items by serial number"
@@ -8926,7 +8957,7 @@ msgstr "シリアル番号で商品を絞り込む"
#: src/tables/Filter.tsx:117
msgid "Serial Below"
-msgstr ""
+msgstr "カウントダウン連番"
#: src/tables/Filter.tsx:118
msgid "Show items with serial numbers less than or equal to a given value"
@@ -8934,7 +8965,7 @@ msgstr "指定された値以下のシリアル番号のアイテムを表示し
#: src/tables/Filter.tsx:126
msgid "Serial Above"
-msgstr ""
+msgstr "連番"
#: src/tables/Filter.tsx:127
msgid "Show items with serial numbers greater than or equal to a given value"
@@ -9055,7 +9086,7 @@ msgstr "バリアントを含む"
#: src/tables/Filter.tsx:265
msgid "Include results for part variants"
-msgstr ""
+msgstr "部品のバリエーションの結果を含めてください"
#: src/tables/Filter.tsx:275
#: src/tables/part/PartPurchaseOrdersTable.tsx:133
@@ -9078,11 +9109,11 @@ msgstr "レポートのフィルタリング"
#: src/tables/Filter.tsx:348
msgid "Filter by manufacturer"
-msgstr ""
+msgstr "メーカーで絞り込む"
#: src/tables/Filter.tsx:361
msgid "Filter by supplier"
-msgstr ""
+msgstr "サプライヤーで絞り込む"
#: src/tables/Filter.tsx:374
msgid "Filter by user who created the order"
@@ -9098,7 +9129,7 @@ msgstr "部品カテゴリーによる絞り込み"
#: src/tables/Filter.tsx:401
msgid "Filter by stock location"
-msgstr ""
+msgstr "在庫場所で絞り込む"
#: src/tables/FilterSelectDrawer.tsx:59
msgid "Remove filter"
@@ -9139,14 +9170,14 @@ msgstr "フィルタを追加"
msgid "Clear Filters"
msgstr "絞り込み条件を解除する"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "記録が見つかりません"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
-msgstr ""
+msgstr "テーブルオプションの読み込み中にエラーが発生しました"
#: src/tables/InvenTreeTable.tsx:250
#~ msgid "Failed to load table options"
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "サーバーが不正なデータ型を返しました。"
@@ -9176,9 +9207,9 @@ msgstr "サーバーが不正なデータ型を返しました。"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
-msgstr ""
+msgstr "テーブルデータの読み込み中にエラーが発生しました"
#: src/tables/InvenTreeTable.tsx:594
#: src/tables/InvenTreeTable.tsx:595
@@ -9190,13 +9221,13 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "詳細を見る"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
-msgstr ""
+msgstr "{model}を表示"
#: src/tables/InvenTreeTable.tsx:712
#~ msgid "Table filters"
@@ -9242,7 +9273,7 @@ msgstr "データを更新する"
#: src/tables/InvenTreeTableHeader.tsx:272
msgid "Active Filters"
-msgstr ""
+msgstr "適用中のフィルター"
#: src/tables/TableHoverCard.tsx:35
#~ msgid "item-{idx}"
@@ -9262,11 +9293,11 @@ msgstr "部品情報"
#: src/tables/bom/BomTable.tsx:121
msgid "This BOM item has not been validated"
-msgstr ""
+msgstr "このBOMは検証されていません"
#: src/tables/bom/BomTable.tsx:240
msgid "Substitutes"
-msgstr ""
+msgstr "代替品"
#: src/tables/bom/BomTable.tsx:301
#~ msgid "Create BOM Item"
@@ -9277,7 +9308,7 @@ msgstr ""
#: src/tables/sales/SalesOrderLineItemTable.tsx:199
#: src/tables/sales/SalesOrderLineItemTable.tsx:216
msgid "Virtual part"
-msgstr ""
+msgstr "仮想部品"
#: src/tables/bom/BomTable.tsx:310
#~ msgid "Show asssmbled items"
@@ -9362,7 +9393,7 @@ msgstr "組み立てられた商品を表示"
#: src/tables/bom/BomTable.tsx:435
msgid "Show virtual items"
-msgstr ""
+msgstr "仮想アイテムを表示します"
#: src/tables/bom/BomTable.tsx:440
msgid "Show items with available stock"
@@ -9478,21 +9509,21 @@ msgstr "代理編集"
#: src/tables/bom/BomTable.tsx:625
msgid "Add BOM Items"
-msgstr ""
+msgstr "BOMの項目を追加する"
#: src/tables/bom/BomTable.tsx:633
msgid "Add a single BOM item"
-msgstr ""
+msgstr "BOMに1つの部品を追加する"
#: src/tables/bom/BomTable.tsx:637
#: src/tables/general/ParameterTable.tsx:206
#: src/tables/part/PartTable.tsx:546
msgid "Import from File"
-msgstr ""
+msgstr "ファイルからインポート"
#: src/tables/bom/BomTable.tsx:639
msgid "Import BOM items from a file"
-msgstr ""
+msgstr "ファイルからBOMの項目をインポートする"
#: src/tables/bom/BomTable.tsx:662
msgid "Bill of materials cannot be edited, as the part is locked"
@@ -9564,7 +9595,7 @@ msgstr "株式配分の編集"
#: src/tables/build/BuildLineTable.tsx:664
#: src/tables/sales/SalesOrderAllocationTable.tsx:218
msgid "Remove Allocated Stock"
-msgstr ""
+msgstr "割り当て済み在庫を削除する"
#: src/tables/build/BuildAllocatedStockTable.tsx:180
#: src/tables/build/BuildLineTable.tsx:663
@@ -9575,17 +9606,17 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:669
#: src/tables/sales/SalesOrderAllocationTable.tsx:221
msgid "Are you sure you want to remove this allocated stock from the order?"
-msgstr ""
+msgstr "この割り当て済み在庫をオーダーから削除しても良いですか?"
#: src/tables/build/BuildAllocatedStockTable.tsx:242
msgid "Consume"
-msgstr ""
+msgstr "消費する"
#: src/tables/build/BuildAllocatedStockTable.tsx:259
#: src/tables/build/BuildLineTable.tsx:112
#: src/tables/sales/SalesOrderAllocationTable.tsx:248
msgid "Remove allocated stock"
-msgstr ""
+msgstr "割り当てられた在庫を削除します"
#: src/tables/build/BuildLineTable.tsx:59
#~ msgid "Show lines with available stock"
@@ -9597,11 +9628,11 @@ msgstr "在庫を見る"
#: src/tables/build/BuildLineTable.tsx:184
msgid "Show fully allocated lines"
-msgstr ""
+msgstr "引き当て完了品目を表示します"
#: src/tables/build/BuildLineTable.tsx:189
msgid "Show fully consumed lines"
-msgstr ""
+msgstr "消費完了品目を表示します"
#: src/tables/build/BuildLineTable.tsx:189
#~ msgid "Show allocated lines"
@@ -9609,7 +9640,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:194
msgid "Show items with sufficient available stock"
-msgstr ""
+msgstr "十分な在庫がある品目を表示します"
#: src/tables/build/BuildLineTable.tsx:199
msgid "Show consumable lines"
@@ -9635,7 +9666,7 @@ msgstr "トラッキングラインの表示"
#: src/tables/build/BuildLineTable.tsx:224
msgid "Show items with stock on order"
-msgstr ""
+msgstr "未納入在庫品を表示する"
#: src/tables/build/BuildLineTable.tsx:259
#: src/tables/sales/SalesOrderLineItemTable.tsx:172
@@ -9662,24 +9693,24 @@ msgstr "単位 数量"
#: src/tables/build/BuildLineTable.tsx:416
msgid "Setup Quantity"
-msgstr ""
+msgstr "設定数量"
#: src/tables/build/BuildLineTable.tsx:425
msgid "Attrition"
-msgstr ""
+msgstr "歩留まり損失"
#: src/tables/build/BuildLineTable.tsx:433
msgid "Rounding Multiple"
-msgstr ""
+msgstr "丸め倍数"
#: src/tables/build/BuildLineTable.tsx:442
msgid "BOM Information"
-msgstr ""
+msgstr "BOM情報"
#: src/tables/build/BuildLineTable.tsx:516
#: src/tables/part/PartBuildAllocationsTable.tsx:102
msgid "Fully allocated"
-msgstr ""
+msgstr "全数引き当て済み"
#: src/tables/build/BuildLineTable.tsx:564
#: src/tables/sales/SalesOrderLineItemTable.tsx:311
@@ -9788,7 +9819,7 @@ msgstr "開始日を指定した注文の表示"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "生産量ストック配分"
@@ -9803,7 +9834,7 @@ msgstr "ビルド出力の追加"
#: src/tables/build/BuildOutputTable.tsx:293
msgid "Build output created"
-msgstr ""
+msgstr "ビルド出力が作成されました"
#: src/tables/build/BuildOutputTable.tsx:304
#~ msgid "Edit build output"
@@ -9820,7 +9851,7 @@ msgstr "このアクションは、選択されたビルド出力からすべて
#: src/tables/build/BuildOutputTable.tsx:387
msgid "Serialize Build Output"
-msgstr ""
+msgstr "ビルド出力にシリアル番号を付与します"
#: src/tables/build/BuildOutputTable.tsx:405
#: src/tables/part/PartTestResultTable.tsx:318
@@ -9862,7 +9893,7 @@ msgstr "ビルド出力から在庫を割り当て解除"
#: src/tables/build/BuildOutputTable.tsx:523
msgid "Serialize build output"
-msgstr ""
+msgstr "ビルド出力にシリアル番号を付与します"
#: src/tables/build/BuildOutputTable.tsx:534
msgid "Complete build output"
@@ -9890,11 +9921,11 @@ msgstr "必須試験"
#: src/tables/build/BuildOutputTable.tsx:700
msgid "External Build"
-msgstr ""
+msgstr "外部ビルド"
#: src/tables/build/BuildOutputTable.tsx:702
msgid "This build order is fulfilled by an external purchase order"
-msgstr ""
+msgstr "このビルドオーダーは、外部の購入発注書によって完了します"
#: src/tables/company/AddressTable.tsx:122
#: src/tables/company/AddressTable.tsx:187
@@ -10049,7 +10080,7 @@ msgstr "アイテムを見る"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "項目追加"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "ラインアイテムの編集"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10082,19 +10113,19 @@ msgstr "内部ユニット"
#: src/tables/general/ParameterTable.tsx:108
#: src/tables/general/ParameterTable.tsx:123
msgid "Updated By"
-msgstr ""
+msgstr "更新済み - "
#: src/tables/general/ParameterTable.tsx:118
msgid "Show parameters for enabled templates"
-msgstr ""
+msgstr "有効なテンプレートのパラメータを表示します"
#: src/tables/general/ParameterTable.tsx:124
msgid "Filter by user who last updated the parameter"
-msgstr ""
+msgstr "パラメーターを最後に更新したユーザーで絞り込みます"
#: src/tables/general/ParameterTable.tsx:154
msgid "Import Parameters"
-msgstr ""
+msgstr "パラメーターインポート"
#: src/tables/general/ParameterTable.tsx:164
#: src/tables/general/ParametricDataTable.tsx:261
@@ -10115,19 +10146,19 @@ msgstr "パラメータの削除"
#: src/tables/general/ParameterTable.tsx:191
msgid "Add Parameters"
-msgstr ""
+msgstr "パラメーターを追加します"
#: src/tables/general/ParameterTable.tsx:197
msgid "Create Parameter"
-msgstr ""
+msgstr "パラメーターを作成します"
#: src/tables/general/ParameterTable.tsx:199
msgid "Create a new parameter"
-msgstr ""
+msgstr "新しいパラメーターを作成します"
#: src/tables/general/ParameterTable.tsx:208
msgid "Import parameters from a file"
-msgstr ""
+msgstr "ファイルからパラメーターをインポートします"
#: src/tables/general/ParameterTemplateTable.tsx:48
#: src/tables/general/ParameterTemplateTable.tsx:197
@@ -10136,7 +10167,7 @@ msgstr "パラメータテンプレートの追加"
#: src/tables/general/ParameterTemplateTable.tsx:64
msgid "Duplicate Parameter Template"
-msgstr ""
+msgstr "重複パラメーターテンプレート"
#: src/tables/general/ParameterTemplateTable.tsx:78
msgid "Delete Parameter Template"
@@ -10173,7 +10204,7 @@ msgstr "単位付きテンプレートの表示"
#: src/tables/general/ParameterTemplateTable.tsx:154
msgid "Show enabled templates"
-msgstr ""
+msgstr "有効なテンプレートを表示します"
#: src/tables/general/ParameterTemplateTable.tsx:158
#: src/tables/settings/ImportSessionTable.tsx:111
@@ -10183,7 +10214,7 @@ msgstr "モデルタイプ"
#: src/tables/general/ParameterTemplateTable.tsx:159
msgid "Filter by model type"
-msgstr ""
+msgstr "モデルタイプで絞り込みます"
#: src/tables/general/ParametricDataTable.tsx:79
msgid "Click to edit"
@@ -10191,20 +10222,20 @@ msgstr "(打ち間違いはありませんか? 今なら編集が可能です。
#: src/tables/general/ParametricDataTableFilters.tsx:36
msgid "True"
-msgstr ""
+msgstr "有効"
#: src/tables/general/ParametricDataTableFilters.tsx:37
msgid "False"
-msgstr ""
+msgstr "無効"
#: src/tables/general/ParametricDataTableFilters.tsx:47
#: src/tables/general/ParametricDataTableFilters.tsx:80
msgid "Select a choice"
-msgstr ""
+msgstr "選択肢を選んでください"
#: src/tables/general/ParametricDataTableFilters.tsx:100
msgid "Enter a value"
-msgstr ""
+msgstr "値を入力してください"
#: src/tables/machine/MachineListTable.tsx:133
msgid "Machine restarted"
@@ -10233,7 +10264,7 @@ msgstr "マシンは正常に削除されました。"
#: src/tables/machine/MachineListTable.tsx:255
#: src/tables/machine/MachineListTable.tsx:697
msgid "Are you sure you want to remove this machine?"
-msgstr ""
+msgstr "この機器を削除しても良いですか?"
#: src/tables/machine/MachineListTable.tsx:285
msgid "Machine"
@@ -10270,7 +10301,7 @@ msgstr "手動再起動が必要"
#: src/tables/machine/MachineListTable.tsx:343
msgid "General"
-msgstr ""
+msgstr "一般"
#: src/tables/machine/MachineListTable.tsx:353
#: src/tables/machine/MachineListTable.tsx:804
@@ -10292,7 +10323,7 @@ msgstr "エラーなし"
#: src/tables/machine/MachineListTable.tsx:431
msgid "Properties"
-msgstr ""
+msgstr "プロパティ"
#: src/tables/machine/MachineListTable.tsx:494
#~ msgid "Create machine"
@@ -10313,15 +10344,15 @@ msgstr "マシン追加"
#: src/tables/machine/MachineListTable.tsx:691
#: src/tables/machine/MachineListTable.tsx:736
msgid "Delete Machine"
-msgstr ""
+msgstr "機器を削除します"
#: src/tables/machine/MachineListTable.tsx:704
msgid "Edit Machine"
-msgstr ""
+msgstr "機器情報を編集します"
#: src/tables/machine/MachineListTable.tsx:718
msgid "Restart Machine"
-msgstr ""
+msgstr "機器の再起動"
#: src/tables/machine/MachineListTable.tsx:749
msgid "Add machine"
@@ -10337,7 +10368,7 @@ msgstr "ドライバー"
#: src/tables/machine/MachineTypeTable.tsx:72
msgid "Driver Type"
-msgstr ""
+msgstr "機器ソフトウェアタイプ"
#: src/tables/machine/MachineTypeTable.tsx:76
msgid "Builtin driver"
@@ -10456,18 +10487,18 @@ msgstr "組立部品の表示"
#: src/tables/part/PartBuildAllocationsTable.tsx:64
msgid "Assembly IPN"
-msgstr ""
+msgstr "アセンブリ IPN"
#: src/tables/part/PartBuildAllocationsTable.tsx:73
msgid "Part IPN"
-msgstr ""
+msgstr "パートIPN"
#: src/tables/part/PartBuildAllocationsTable.tsx:91
msgid "Required Stock"
msgstr "必要在庫"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "ビルドオーダーを見る"
@@ -10583,11 +10614,11 @@ msgstr "アセンブリ属性によるフィルタリング"
#: src/tables/part/PartTable.tsx:215
msgid "BOM Valid"
-msgstr ""
+msgstr "BOMが有効です"
#: src/tables/part/PartTable.tsx:216
msgid "Filter by parts with a valid BOM"
-msgstr ""
+msgstr "有効なBOMを持つ部品でフィルタリングしてください"
#: src/tables/part/PartTable.tsx:222
msgid "Include parts in subcategories"
@@ -10707,7 +10738,7 @@ msgstr "ユーザーが購読しているパートによるフィルタリング
#: src/tables/part/PartTable.tsx:377
msgid "Import Parts"
-msgstr ""
+msgstr "部品をインポートします"
#: src/tables/part/PartTable.tsx:464
#: src/tables/part/PartTable.tsx:512
@@ -10724,27 +10755,27 @@ msgstr "選択した部品の注文"
#: src/tables/part/PartTable.tsx:534
msgid "Add Parts"
-msgstr ""
+msgstr "パーツを追加"
#: src/tables/part/PartTable.tsx:540
msgid "Create Part"
-msgstr ""
+msgstr "部品を作成する"
#: src/tables/part/PartTable.tsx:542
msgid "Create a new part"
-msgstr ""
+msgstr "新しい部品を作成します"
#: src/tables/part/PartTable.tsx:548
msgid "Import parts from a file"
-msgstr ""
+msgstr "部品をファイルからインポートします"
#: src/tables/part/PartTable.tsx:553
msgid "Import from Supplier"
-msgstr ""
+msgstr "サプライヤーからインポートします"
#: src/tables/part/PartTable.tsx:555
msgid "Import parts from a supplier plugin"
-msgstr ""
+msgstr "サプライヤープラグインから部品をインポートします"
#: src/tables/part/PartTestResultTable.tsx:103
#: src/tables/part/PartTestResultTable.tsx:181
@@ -10763,11 +10794,11 @@ msgstr "テスト結果追加"
#: src/tables/part/PartTestResultTable.tsx:142
msgid "Add Test Results"
-msgstr ""
+msgstr "テスト結果を追加します"
#: src/tables/part/PartTestResultTable.tsx:152
msgid "Test results added"
-msgstr ""
+msgstr "テスト結果を追加しました"
#: src/tables/part/PartTestResultTable.tsx:180
#: src/tables/stock/StockItemTestResultTable.tsx:197
@@ -11167,17 +11198,17 @@ msgstr "アクティブパート"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:45
#: src/tables/purchasing/ManufacturerPartTable.tsx:135
msgid "Show manufacturer parts for active internal parts."
-msgstr ""
+msgstr "現在使用中の社内部品に関連付けられている、メーカー部品を表示します"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:50
#: src/tables/purchasing/ManufacturerPartTable.tsx:140
msgid "Active Manufacturer"
-msgstr ""
+msgstr "取引中メーカー"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:51
#: src/tables/purchasing/ManufacturerPartTable.tsx:142
msgid "Show manufacturer parts for active manufacturers."
-msgstr ""
+msgstr "取引中メーカーの製造部品を表示します。"
#: src/tables/purchasing/ManufacturerPartTable.tsx:63
#~ msgid "Create Manufacturer Part"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "ラインアイテムのインポート"
@@ -11222,11 +11253,11 @@ msgstr "受領済みの品目を表示"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "品目を受け取る"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "商品を受け取る"
@@ -11244,7 +11275,7 @@ msgstr "サプライヤー部品の追加"
#: src/tables/purchasing/SupplierPartTable.tsx:200
msgid "Import supplier part"
-msgstr ""
+msgstr "サプライヤー部品をインポート"
#: src/tables/purchasing/SupplierPartTable.tsx:205
#~ msgid "Supplier part deleted"
@@ -11404,7 +11435,7 @@ msgstr "貨物の追加"
#: src/tables/sales/SalesOrderShipmentTable.tsx:300
msgid "Show shipments which have been checked"
-msgstr ""
+msgstr "確認済みの出荷を表示します"
#: src/tables/sales/SalesOrderShipmentTable.tsx:305
msgid "Show shipments which have been shipped"
@@ -11545,64 +11576,64 @@ msgstr "カスタムユニットの追加"
#: src/tables/settings/EmailTable.tsx:25
msgid "Announced"
-msgstr ""
+msgstr "発表されました"
#: src/tables/settings/EmailTable.tsx:27
msgid "Sent"
-msgstr ""
+msgstr "送信"
#: src/tables/settings/EmailTable.tsx:29
msgid "Failed"
-msgstr ""
+msgstr "失敗"
#: src/tables/settings/EmailTable.tsx:33
msgid "Read"
-msgstr ""
+msgstr "既読"
#: src/tables/settings/EmailTable.tsx:35
msgid "Confirmed"
-msgstr ""
+msgstr "確認済み"
#: src/tables/settings/EmailTable.tsx:43
#: src/tables/settings/EmailTable.tsx:58
msgid "Send Test Email"
-msgstr ""
+msgstr "テストメールを送信"
#: src/tables/settings/EmailTable.tsx:45
msgid "Email sent successfully"
-msgstr ""
+msgstr "メールは正常に送信されました"
#: src/tables/settings/EmailTable.tsx:71
msgid "Delete Email"
-msgstr ""
+msgstr "メールの削除"
#: src/tables/settings/EmailTable.tsx:72
msgid "Email deleted successfully"
-msgstr ""
+msgstr "メールの削除が正常に完了しました"
#: src/tables/settings/EmailTable.tsx:80
msgid "Subject"
-msgstr ""
+msgstr "件名"
#: src/tables/settings/EmailTable.tsx:85
msgid "To"
-msgstr ""
+msgstr "まで"
#: src/tables/settings/EmailTable.tsx:90
msgid "Sender"
-msgstr ""
+msgstr "送信者"
#: src/tables/settings/EmailTable.tsx:122
msgid "Direction"
-msgstr ""
+msgstr "方向"
#: src/tables/settings/EmailTable.tsx:125
msgid "Incoming"
-msgstr ""
+msgstr "受信"
#: src/tables/settings/EmailTable.tsx:125
msgid "Outgoing"
-msgstr ""
+msgstr "送信"
#: src/tables/settings/ErrorTable.tsx:51
#~ msgid "Delete error report"
@@ -11647,7 +11678,7 @@ msgstr "輸出日"
#: src/tables/settings/ExportSessionTable.tsx:59
msgid "Delete Output"
-msgstr ""
+msgstr "出力の削除"
#: src/tables/settings/FailedTasksTable.tsx:32
#: src/tables/settings/PendingTasksTable.tsx:28
@@ -11697,7 +11728,7 @@ msgstr "ユーザーグループ名"
#: src/tables/settings/GroupTable.tsx:170
#: src/tables/settings/UserTable.tsx:315
msgid "Open Profile"
-msgstr ""
+msgstr "プロフィールを開く"
#: src/tables/settings/GroupTable.tsx:185
msgid "Delete group"
@@ -11759,15 +11790,15 @@ msgstr "引数"
#: src/tables/settings/PendingTasksTable.tsx:61
msgid "Remove all pending tasks"
-msgstr ""
+msgstr "保留中のタスクをすべて削除します"
#: src/tables/settings/PendingTasksTable.tsx:69
msgid "All pending tasks deleted"
-msgstr ""
+msgstr "保留中のタスクはすべて削除されました"
#: src/tables/settings/PendingTasksTable.tsx:76
msgid "Error while deleting all pending tasks"
-msgstr ""
+msgstr "保留中のタスクをすべて削除中にエラーが発生しました"
#: src/tables/settings/ProjectCodeTable.tsx:58
msgid "Edit Project Code"
@@ -11924,11 +11955,11 @@ msgstr "ユーザーグループ"
#: src/tables/settings/UserTable.tsx:332
msgid "Lock user"
-msgstr ""
+msgstr "ユーザーをロックします"
#: src/tables/settings/UserTable.tsx:342
msgid "Unlock user"
-msgstr ""
+msgstr "ユーザーのロックを解除します"
#: src/tables/settings/UserTable.tsx:358
msgid "Delete user"
@@ -11944,11 +11975,11 @@ msgstr "このユーザーを削除してもよろしいですか?"
#: src/tables/settings/UserTable.tsx:372
msgid "Set Password"
-msgstr ""
+msgstr "パスワードを設定してください"
#: src/tables/settings/UserTable.tsx:377
msgid "Password updated"
-msgstr ""
+msgstr "パスワードを更新しました"
#: src/tables/settings/UserTable.tsx:388
msgid "Add user"
@@ -11980,15 +12011,15 @@ msgstr "ユーザー追加"
#: src/tables/settings/UserTable.tsx:481
msgid "User updated"
-msgstr ""
+msgstr "ユーザーを更新しました"
#: src/tables/settings/UserTable.tsx:482
msgid "User updated successfully"
-msgstr ""
+msgstr "ユーザーの更新が正常に完了しました"
#: src/tables/settings/UserTable.tsx:488
msgid "Error updating user"
-msgstr ""
+msgstr "ユーザーの更新中にエラーが発生しました"
#: src/tables/stock/InstalledItemsTable.tsx:38
#: src/tables/stock/InstalledItemsTable.tsx:90
@@ -12227,7 +12258,7 @@ msgstr "外部ロケーションにアイテムを表示"
#: src/tables/stock/StockItemTable.tsx:559
msgid "Order items"
-msgstr ""
+msgstr "注文アイテム"
#: src/tables/stock/StockItemTable.tsx:595
#~ msgid "Add a new stock item"
diff --git a/src/frontend/src/locales/ko/messages.po b/src/frontend/src/locales/ko/messages.po
index 7bcfbd9901..206130fad7 100644
--- a/src/frontend/src/locales/ko/messages.po
+++ b/src/frontend/src/locales/ko/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: ko\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/lt/messages.po b/src/frontend/src/locales/lt/messages.po
index 3f6ff98f36..9670d7792c 100644
--- a/src/frontend/src/locales/lt/messages.po
+++ b/src/frontend/src/locales/lt/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: lt\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Lithuanian\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && (n%100>19 || n%100<11) ? 0 : (n%10>=2 && n%10<=9) && (n%100>19 || n%100<11) ? 1 : n%1!=0 ? 2: 3);\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr "Ne"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Ne"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Klaida atvaizduojant komponentą"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Įvyko klaida atvaizduojant šį komponentą. Daugiau informacijos rasite konsoleje."
@@ -637,7 +638,7 @@ msgstr "Brūkšninis kodas"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Nuskaityti"
@@ -798,12 +799,12 @@ msgstr "Spausdinamos ataskaitos"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Spausdinti etiketę"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Spausdinti"
@@ -819,19 +820,19 @@ msgstr "Spausdinti"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Spausdinti ataskaitą"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Spausdinimo veiksmai"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Spausdinti etiketes"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Spausdinti ataskaitas"
@@ -860,8 +861,8 @@ msgstr "Būsite nukreiptas pas tiekėją tolimesniems veiksmams."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Atidaryti brūkšninio kodo skaitytuvą"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/lv/messages.po b/src/frontend/src/locales/lv/messages.po
index 50dae1c7e8..c3650ac974 100644
--- a/src/frontend/src/locales/lv/messages.po
+++ b/src/frontend/src/locales/lv/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: lv\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Latvian\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/nl/messages.po b/src/frontend/src/locales/nl/messages.po
index d8895a5e80..b137dc960f 100644
--- a/src/frontend/src/locales/nl/messages.po
+++ b/src/frontend/src/locales/nl/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: nl\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Dutch\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Verwijderen"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Annuleer"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Acties"
@@ -73,7 +73,7 @@ msgstr "Acties"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Zoeken"
@@ -97,12 +97,12 @@ msgstr "Nee"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Nee"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Onderdeel"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Onderdelen"
@@ -149,14 +150,14 @@ msgstr "Onderdelen"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Parameter"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parameters"
@@ -168,7 +169,7 @@ msgstr "Parameter sjabloon"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Parameter sjablonen"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "Onderdeel categorie"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Onderdeel categorieën"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Voorraad item"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Voorraad items"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Voorraad locatie"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Voorraad locatie"
@@ -267,7 +268,7 @@ msgstr "Voorraad locatie types"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Voorraad geschiedenis"
@@ -340,11 +341,11 @@ msgstr "Inkooporder"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Inkooporders"
@@ -373,10 +374,10 @@ msgstr "Verkooporder"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Verkooporders"
@@ -398,10 +399,10 @@ msgstr "Retourorder"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Retourorders"
@@ -546,23 +547,23 @@ msgstr "Selectie lijsten"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Administrator"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Productieorders"
@@ -597,11 +598,11 @@ msgstr "Productieorders"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Fout bij renderen component"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Er is een fout opgetreden tijdens het weergeven van deze component. Raadpleeg de console voor meer informatie."
@@ -637,7 +638,7 @@ msgstr "Barcode"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Scannen"
@@ -798,12 +799,12 @@ msgstr "Rapporten afdrukken"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Label afdrukken"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Afdrukken"
@@ -819,19 +820,19 @@ msgstr "Afdrukken"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Rapport afdrukken"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Acties afdrukken"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Labels afdrukken"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Raport afdrukken"
@@ -860,8 +861,8 @@ msgstr "Je wordt doorverwezen naar de provider voor verdere acties."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Barcode Scanner openen"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Accepteer lay-out"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1087,11 +1088,11 @@ msgstr "Toon het aantal aan u toegewezen verkooporders"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:129
#: src/pages/sales/SalesIndex.tsx:87
msgid "Pending Shipments"
-msgstr ""
+msgstr "Verzendingen in behandeling"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:131
msgid "Show the number of pending sales order shipments"
-msgstr ""
+msgstr "Toon het aantal lopende verzendingen van bestellingen"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:136
msgid "Active Purchase Orders"
@@ -1237,11 +1238,11 @@ msgstr "De bijbehorende afbeelding van dit item verwijderen?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Wis"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Versturen"
@@ -1452,7 +1453,7 @@ msgstr "Het voorbeeld is met succes bijgewerkt."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:236
msgid "An unknown error occurred while rendering the preview."
-msgstr ""
+msgstr "Er is een onbekende fout opgetreden bij het weergeven van het voorbeeld."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263
#~ msgid "Save & Reload preview"
@@ -1579,21 +1580,21 @@ msgstr "Met succes ingelogd"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Inloggen mislukt"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Controleer uw invoer en probeer het opnieuw."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "E-mail levering gelukt"
@@ -1628,7 +1629,7 @@ msgstr "Je gebruikersnaam"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Wachtwoord"
@@ -1732,7 +1733,7 @@ msgstr "Hostnaam"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API versie"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1852,15 +1854,15 @@ msgstr "Bezig"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "Selecteer bestand om te uploaden"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "Voorgestelde waarde accepteren"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "Selecteer datum"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
@@ -1892,7 +1894,7 @@ msgstr "{0} pictogrammen"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Laden"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Gegevens verwerken"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Er is een fout opgetreden"
@@ -2002,31 +2004,31 @@ msgstr "Selecteer kolom, of laat leeg om dit veld te negeren."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Negeer dit veld"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Gegevenskolommen toewijzen aan database velden"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Accepteer kolomtoewijzing"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Database veld"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Veld beschrijving"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Geïmporteerde kolom"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Standaard waarde"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Map kolommen"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Gegevens importeren"
+msgid "Import Rows"
+msgstr "Importeer Rijen"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "De gegevens zijn met succes geïmporteerd"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Sluiten"
@@ -2208,7 +2214,7 @@ msgstr "Groepsrollen bijwerken"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Rol"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Bekijken"
@@ -2255,10 +2261,10 @@ msgstr "Geen artikelen"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Links"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentatie"
@@ -2479,7 +2485,7 @@ msgstr "Waarschuwingen"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "Geen problemen gevonden"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
@@ -2547,7 +2553,7 @@ msgstr "Instellingen"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Gebruiker instellingen"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Systeem instellingen"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Beheerder Center"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Uitloggen"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Verwijder zoekgroep"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Plug-in informatie"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Verzending"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inactief"
@@ -3001,7 +3007,7 @@ msgstr "Geen voorraad"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "In bestelling"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Categorie"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Categorie"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Locatie"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Serienummer"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Serienummer"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Aantal"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Batch"
@@ -3125,7 +3130,7 @@ msgstr "Bron"
#: src/components/settings/QuickAction.tsx:47
msgid "Act"
-msgstr ""
+msgstr "Doen"
#: src/components/settings/QuickAction.tsx:73
#: src/components/settings/QuickAction.tsx:113
@@ -3143,54 +3148,58 @@ msgstr "Staat toevoegen"
#: src/components/settings/QuickAction.tsx:85
msgid "Open an Issue"
-msgstr ""
+msgstr "Rapporteer een probleem"
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
-msgstr ""
+msgstr "Rapporteer een bug of vraag een functie aan op GitHub"
#: src/components/settings/QuickAction.tsx:88
msgid "Open Issue"
-msgstr ""
+msgstr "Openstaande problemen"
#: src/components/settings/QuickAction.tsx:97
msgid "Add New Group"
-msgstr ""
+msgstr "Nieuwe Groep Toevoegen"
#: src/components/settings/QuickAction.tsx:98
msgid "Create a new group to manage your users"
-msgstr ""
+msgstr "Maak een nieuwe groep om uw gebruikers te beheren"
#: src/components/settings/QuickAction.tsx:100
msgid "New Group"
-msgstr ""
+msgstr "Nieuwe groep"
#: src/components/settings/QuickAction.tsx:105
msgid "Add New User"
-msgstr ""
+msgstr "Nieuwe gebruiker toevoegen"
#: src/components/settings/QuickAction.tsx:106
msgid "Create a new user to manage your groups"
-msgstr ""
+msgstr "Nieuwe gebruiker toevoegen om uw groepen te beheren"
#: src/components/settings/QuickAction.tsx:108
msgid "New User"
-msgstr ""
+msgstr "Nieuwe gebruiker"
#: src/components/settings/QuickAction.tsx:114
msgid "Create a new project code to organize your items"
-msgstr ""
+msgstr "Maak een nieuwe projectcode om uw items te organiseren"
#: src/components/settings/QuickAction.tsx:116
msgid "Add Code"
-msgstr ""
+msgstr "Code toevoegen"
#: src/components/settings/QuickAction.tsx:121
msgid "Add Custom State"
-msgstr ""
+msgstr "Aangepaste staat toevoegen"
#: src/components/settings/QuickAction.tsx:122
msgid "Create a new custom state for your workflow"
+msgstr "Maak een nieuwe aangepaste status voor uw workflow"
+
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
msgstr ""
#: src/components/settings/SettingItem.tsx:47
@@ -3198,6 +3207,10 @@ msgstr ""
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Instelling wijzigen"
@@ -3206,32 +3219,32 @@ msgstr "Instelling wijzigen"
msgid "Setting {key} updated successfully"
msgstr "Instelling {key} met succes bijgewerkt"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Instelling bijgewerkt"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Instelling {0} met succes bijgewerkt"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Fout bij bewerken instelling"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Fout bij laden instellingen"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Geen instellingen"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Er zijn geen configureerbare instellingen beschikbaar"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Geen instellingen opgegeven"
@@ -3593,15 +3606,15 @@ msgstr "Geen instellingen opgegeven"
#: src/components/wizards/ImportPartWizard.tsx:105
msgid "Exact Match"
-msgstr ""
+msgstr "Exacte overeenkomst"
#: src/components/wizards/ImportPartWizard.tsx:112
msgid "Current part"
-msgstr ""
+msgstr "Huidig onderdeel"
#: src/components/wizards/ImportPartWizard.tsx:118
msgid "Already Imported"
-msgstr ""
+msgstr "Al geïmporteerd"
#: src/components/wizards/ImportPartWizard.tsx:205
#: src/pages/company/CompanyDetail.tsx:137
@@ -3626,107 +3639,107 @@ msgstr "Laden..."
#: src/components/wizards/ImportPartWizard.tsx:223
msgid "Error fetching suppliers"
-msgstr ""
+msgstr "Fout bij ophalen leveranciers"
#: src/components/wizards/ImportPartWizard.tsx:224
msgid "Select supplier"
-msgstr ""
+msgstr "Selecteer leverancier"
#. placeholder {0}: searchResults.length
#: src/components/wizards/ImportPartWizard.tsx:246
msgid "Found {0} results"
-msgstr ""
+msgstr "{0} Resultaten gevonden"
#: src/components/wizards/ImportPartWizard.tsx:259
msgid "Import this part"
-msgstr ""
+msgstr "Importeer dit onderdeel"
#: src/components/wizards/ImportPartWizard.tsx:313
msgid "Are you sure you want to import this part into the selected category now?"
-msgstr ""
+msgstr "Weet u zeker dat u dit deel nu in de geselecteerde categorie wilt importeren?"
#: src/components/wizards/ImportPartWizard.tsx:326
msgid "Import Now"
-msgstr ""
+msgstr "Nu importeren"
#: src/components/wizards/ImportPartWizard.tsx:372
msgid "Select and edit the parameters you want to add to this part."
-msgstr ""
+msgstr "Selecteer en bewerk de parameters die u wilt toevoegen aan dit onderdeel."
#: src/components/wizards/ImportPartWizard.tsx:379
msgid "Default category parameters"
-msgstr ""
+msgstr "Standaard categorie parameters"
#: src/components/wizards/ImportPartWizard.tsx:391
msgid "Other parameters"
-msgstr ""
+msgstr "Andere parameters"
#: src/components/wizards/ImportPartWizard.tsx:446
msgid "Add a new parameter"
-msgstr ""
+msgstr "Een parameter toevoegen"
#: src/components/wizards/ImportPartWizard.tsx:468
msgid "Skip"
-msgstr ""
+msgstr "Overslaan"
#: src/components/wizards/ImportPartWizard.tsx:476
msgid "Create Parameters"
-msgstr ""
+msgstr "Parameter aanmaken"
#: src/components/wizards/ImportPartWizard.tsx:493
msgid "Create initial stock for the imported part."
-msgstr ""
+msgstr "Maak eerste voorraad aan voor het geïmporteerde onderdeel."
#: src/components/wizards/ImportPartWizard.tsx:511
msgid "Next"
-msgstr ""
+msgstr "Volgende"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Onderdeel bewerken"
#: src/components/wizards/ImportPartWizard.tsx:567
msgid "Part imported successfully!"
-msgstr ""
+msgstr "Onderdeel succesvol geïmporteerd!"
#: src/components/wizards/ImportPartWizard.tsx:576
msgid "Failed to import part: "
-msgstr ""
+msgstr "Onderdeel importeren mislukt: "
#: src/components/wizards/ImportPartWizard.tsx:641
msgid "Are you sure, you want to import the supplier and manufacturer part into this part?"
-msgstr ""
+msgstr "Weet u zeker dat u het leveranciers en het fabrikant onderdeel wilt importeren"
#: src/components/wizards/ImportPartWizard.tsx:655
msgid "Import"
-msgstr ""
+msgstr "Importeer"
#: src/components/wizards/ImportPartWizard.tsx:692
msgid "Parameters created successfully!"
-msgstr ""
+msgstr "Parameters succesvol aangemaakt!"
#: src/components/wizards/ImportPartWizard.tsx:720
msgid "Failed to create parameters, please fix the errors and try again"
-msgstr ""
+msgstr "Het maken van parameters is mislukt, fix de errors en probeer opnieuw"
#. placeholder {0}: supplierPart?.supplier
#: src/components/wizards/ImportPartWizard.tsx:740
msgid "Part imported successfully from supplier {0}."
-msgstr ""
+msgstr "Onderdeel succesvol geïmporteerd van leverancier {0}."
#: src/components/wizards/ImportPartWizard.tsx:753
msgid "Open Part"
-msgstr ""
+msgstr "Onderdeel openen"
#: src/components/wizards/ImportPartWizard.tsx:760
msgid "Open Supplier Part"
-msgstr ""
+msgstr "Onderdeel leverancier openen"
#: src/components/wizards/ImportPartWizard.tsx:767
msgid "Open Manufacturer Part"
-msgstr ""
+msgstr "Onderdeel fabrikant openen"
#: src/components/wizards/ImportPartWizard.tsx:797
#: src/tables/part/PartTable.tsx:499
@@ -3735,48 +3748,48 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:803
msgid "Import Supplier Part"
-msgstr ""
+msgstr "Leveranciers onderdeel importeren"
#: src/components/wizards/ImportPartWizard.tsx:805
msgid "Search Supplier Part"
-msgstr ""
+msgstr "Leveranciers onderdeel zoeken"
#: src/components/wizards/ImportPartWizard.tsx:807
msgid "Confirm import"
-msgstr ""
+msgstr "Importeren bevestigen"
#: src/components/wizards/ImportPartWizard.tsx:809
msgid "Done"
-msgstr ""
+msgstr "Klaar"
#: src/components/wizards/OrderPartsWizard.tsx:75
msgid "Error fetching part requirements"
-msgstr ""
+msgstr "Fout bij ophalen onderdelen eisen"
#: src/components/wizards/OrderPartsWizard.tsx:113
msgid "Requirements"
-msgstr ""
+msgstr "Vereisten"
#: src/components/wizards/OrderPartsWizard.tsx:117
msgid "Build Requirements"
-msgstr ""
+msgstr "Bouw Eisen"
#: src/components/wizards/OrderPartsWizard.tsx:123
msgid "Sales Requirements"
-msgstr ""
+msgstr "Verkoop eisen"
#: src/components/wizards/OrderPartsWizard.tsx:129
#: src/forms/StockForms.tsx:894
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -3819,7 +3832,7 @@ msgstr "Selecteer leveranciersdeel"
#: src/components/wizards/OrderPartsWizard.tsx:323
msgid "Copy supplier part number"
-msgstr ""
+msgstr "Kopiëer leveranciersartikelnummer"
#: src/components/wizards/OrderPartsWizard.tsx:326
msgid "New supplier part"
@@ -4038,77 +4051,81 @@ msgstr "Onderdelen bestellen"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Ga naar het InvenTree dashboard"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Bezoek de documentatie om meer te weten te komen over InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Over InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Server informatie"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Over deze InvenTree instantie"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Licentie informatie"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licenties voor afhankelijkheden van de service"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Open navigatie"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Open het hoofdnavigatiemenu"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Scan een streepjescode of QR-code"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
-msgstr ""
+msgstr "Ga naar uw gebruikersinstellingen"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
-msgstr ""
+msgstr "Ga naar inkooporders"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
-msgstr ""
+msgstr "Ga naar verkooporders"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
-msgstr ""
+msgstr "Ga naar retourorders"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
-msgstr ""
+msgstr "Ga naar bouwopdracht"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
-msgstr ""
+msgstr "Ga naar systeeminstellingen"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Ga naar het beheergedeelte"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "InvenTree plug-ins beheren"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Vervanging toegevoegd"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Bouw Uitvoer"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
-msgstr ""
+msgstr "Te voltooien hoeveelheid"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Voltooi Productie"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Productieorder is voltooid"
@@ -4428,24 +4445,24 @@ msgstr "Productieorder is voltooid"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
-msgstr ""
+msgstr "Hoeveelheid te schrappen"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Verwijder productieorder"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Geselecteerde bouw outputs worden voltooid, maar gemarkeerd als schroot"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Toegewezen voorraadproducten zullen worden verbruikt"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Productieorder zijn verwijderd"
@@ -4453,24 +4470,24 @@ msgstr "Productieorder zijn verwijderd"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Annuleer productieorder"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Geselecteerde build outputs worden verwijderd"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Toegewezen voorraadartikelen worden teruggestuurd naar voorraad"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Productieorders zijn geannuleerd"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Productieorders zijn geannuleerd"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Toegewezen"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Bron locatie"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Selecteer de bron locatie voor de voorraadtoewijzing"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Selecteer de bron locatie voor de voorraadtoewijzing"
msgid "Allocate Stock"
msgstr "Voorraad toewijzen"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Voorraad items toegewezen"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Voorraad items toegewezen"
msgid "Consume Stock"
msgstr "Verbruikte voorraad"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
-msgstr ""
+msgstr "Voorraaditems gepland om te worden gebruikt"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Volledig verbruikt"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4566,14 +4583,18 @@ msgstr "Verbruikt"
#: src/forms/ReturnOrderForms.tsx:138
#: src/forms/SalesOrderForms.tsx:185
msgid "Select project code for this line item"
-msgstr ""
+msgstr " "
#: src/forms/CompanyForms.tsx:150
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Geabonneerd"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Abonneren op meldingen voor dit onderdeel"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Bovenliggende onderdeel categorie"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Abonneer je op meldingen voor deze categorie"
@@ -4690,8 +4707,8 @@ msgstr "Winkel met reeds ontvangen voorraad"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4770,33 +4787,33 @@ msgstr "Item ontvangen in voorraad"
#: src/forms/SalesOrderForms.tsx:210
#: src/tables/sales/SalesOrderShipmentTable.tsx:215
msgid "Check Shipment"
-msgstr ""
+msgstr "Controleer Levering"
#: src/forms/SalesOrderForms.tsx:211
msgid "Marking the shipment as checked indicates that you have verified that all items included in this shipment are correct"
-msgstr ""
+msgstr "Het markeren van de zending als gecontroleerd geeft aan dat u hebt geverifieerd dat alle artikelen in deze zending correct zijn"
#: src/forms/SalesOrderForms.tsx:221
msgid "Shipment marked as checked"
-msgstr ""
+msgstr "Verzending gemarkeerd als gecontroleerd"
#: src/forms/SalesOrderForms.tsx:236
#: src/forms/SalesOrderForms.tsx:238
#: src/tables/sales/SalesOrderShipmentTable.tsx:228
msgid "Uncheck Shipment"
-msgstr ""
+msgstr "Verzending uitvinken"
#: src/forms/SalesOrderForms.tsx:239
msgid "Marking the shipment as unchecked indicates that the shipment requires further verification"
-msgstr ""
+msgstr "Het uitvinken van de zending geeft aan dat de verzending verder gecontroleerd moet worden"
#: src/forms/SalesOrderForms.tsx:249
msgid "Shipment marked as unchecked"
-msgstr ""
+msgstr "Verzending gemarkeerd als ongecontroleerd"
#: src/forms/SalesOrderForms.tsx:480
msgid "Leave blank to use the order address"
-msgstr ""
+msgstr "Laat leeg om het besteladres te gebruiken"
#: src/forms/StockForms.tsx:110
#~ msgid "Create Stock Item"
@@ -4854,145 +4871,145 @@ msgstr "Terug"
msgid "Count"
msgstr "Aantal"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Voorraad toevoegen"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Voorraad toegevoegd"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Verhoog de hoeveelheid van de geselecteerde voorraadartikelen met een bepaald bedrag."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Voorraad verwijderen"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Voorraad verwijderd"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Verlaag de hoeveelheid van de geselecteerde voorraadartikelen met een bepaald bedrag."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Voorraad verplaatsen "
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Voorraadartikel verplaatst"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Verplaats de geselecteerde items naar de opgegeven locatie."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Terug naar voorraad"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Voorraad teruggestuurd"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Retourneer geselecteerde items naar voorraad, naar de opgegeven locatie."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Tel voorraad"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Voorraad geteld"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Tel de geselecteerde voorraaditems, en pas de hoeveelheid overeenkomstig aan."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Wijzig voorraad status"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Voorraad status gewijzigd"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Verander de status van de geselecteerde voorraaditems."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Voorraad samenvoegen"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Voorraad samengevoegd"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Voorraad items samenvoegen"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "Samenvoeg bewerking kan niet worden teruggedraaid"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "Tracking informatie kan verloren gaan tijdens het samenvoegen van items"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "De informatie van de leverancier kan verloren gaan bij het samenvoegen van items"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Voorraad toewijzen aan klant"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Voorraad toegewezen aan klant"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Voorraad items verwijderen"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Voorraad verwijderd"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Deze bewerking zal de geselecteerde voorraaditems permanent verwijderen."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Bovenliggende voorraad locatie"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Zoek serienummer"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Geen overeenkomende items"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Meerdere overeenkomende items"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Ongeldige reactie van server"
@@ -5062,99 +5079,110 @@ msgstr "Interne serverfout"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Is al ingelogd"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "Er is een tegenstrijdige sessie op de server voor deze browser. Meld u eerst af."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Uitgelogd"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Geen antwoord van server."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "MFA-login succesvol"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "De MFA-gegevens werden automatisch verstrekt in de browser"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Uitgelogd"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Succesvol uitgelogd"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Taal is gewijzigd"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Uw actieve taal is gewijzigd naar de gewenste taal in uw profiel"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Thema gewijzigd"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Uw actieve thema is gewijzigd naar het thema in uw profiel"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Check uw inbox voor een reset-link. Dit werkt alleen als u een account heeft. Controleer ook in spam box."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Reset is mislukt"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Is al ingelogd"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "Er is een tegenstrijdige sessie op de server voor deze browser. Meld u eerst af."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Ingelogd"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Succesvol ingelogd"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Het instellen van MFA is mislukt"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Wachtwoord ingesteld"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Het wachtwoord is met succes ingesteld. U kunt nu inloggen met uw nieuwe wachtwoord"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Wachtwoord kon niet worden gewijzigd"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "De twee wachtwoordvelden komen niet overeen"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Wachtwoord gewijzigd"
@@ -5210,11 +5238,11 @@ msgstr "De aanvraag duurde te lang"
msgid "Exporting Data"
msgstr "Gegevens exporteren"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Gegevens exporteren"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Exporteren"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Geselecteerde voorraadartikelen verwijderen"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Voorraad acties"
@@ -5383,18 +5411,18 @@ msgstr "Heb je geen account?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Multi-Factor authenticatie"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP Code"
#: src/pages/Auth/MFA.tsx:35
msgid "Enter one of your codes: {mfa_types}"
-msgstr ""
+msgstr "Voer een van uw codes in: {mfa_types}"
#: src/pages/Auth/MFA.tsx:42
msgid "Remember this device"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Positie"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Type"
@@ -5933,222 +5961,222 @@ msgstr "Bewerk profiel"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
-msgstr ""
+msgstr "Opnieuw aanmelden succesvol"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
-msgstr ""
+msgstr "U bent succesvol opnieuw aangemeld"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
-msgstr ""
+msgstr "Fout bij Opnieuw aanmelden"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
-msgstr ""
+msgstr "Opnieuw aanmelden mislukt"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
-msgid "Reauthenticate"
-msgstr ""
+msgstr "Opnieuw verifiëren mislukt"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
-msgid "Reauthentiction is required to continue."
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
+msgid "Reauthenticate"
+msgstr "Opnieuw verifiëren"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
+msgid "Reauthentiction is required to continue."
+msgstr "U moet zich opnieuw aanmelden om door te kunnen gaan."
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Voer je wachtwoord in"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
-msgstr ""
+msgstr "Voer een van Uw TOTP-codes in"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
-msgstr ""
+msgstr "WebAuthn inloggegevens verwijderd"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
-msgstr ""
+msgstr "WebAuthn inloggegevens succesvol verwijderd."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
-msgstr ""
+msgstr "Fout bij verwijderen van WebAuthn aanmeldgegevens"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
-msgstr ""
+msgstr "Verwijder WebAuthn aanmeldgegevens"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
-msgstr ""
+msgstr "Bevestig verwijderen"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
-msgstr ""
+msgstr "Bevestig verwijderen van webauth-inloggegevens"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
-msgstr ""
+msgstr "TOTP Verwijderd"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
-msgstr ""
+msgstr "TOTP-token succesvol verwijderd."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
-msgstr ""
+msgstr "Fout bij verwijderen van TOTP-token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
-msgstr ""
+msgstr "TOTP-Token verwijderen"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
-msgstr ""
+msgstr "Verwijderen van TOTP-Code bevestigen"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
-msgstr ""
+msgstr "TOTP is al geregistreerd"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
-msgstr ""
+msgstr "Er is al een TOTP-token geregistreerd voor dit account."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
-msgstr ""
+msgstr "Fout bij ophalen van TOTP-registratie"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
-msgstr ""
+msgstr "Er is een onverwachte fout opgetreden bij het ophalen van de TOTP-registratiegegevens."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
-msgstr ""
+msgstr "TOTP geregistreerd"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
-msgstr ""
+msgstr "TOTP-token succesvol geregistreerd."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Fout bij het registreren van TOTP token"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "TOTP Token registreren"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
-msgstr ""
+msgstr "Fout bij ophalen herstelcodes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Herstel codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
-msgstr ""
+msgstr "De volgende eenmalige herstelcodes zijn beschikbaar"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
-msgid "No Unused Codes"
-msgstr ""
+msgstr "Herstelcodes kopiëren naar klembord"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+msgid "No Unused Codes"
+msgstr "Geen ongebruikte codes"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
-msgid "WebAuthn Registered"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
-msgid "WebAuthn credential registered successfully"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
-msgid "Error registering WebAuthn credential"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
-msgid "WebAuthn Registration Failed"
-msgstr ""
+msgstr "Er zijn geen herstelcodes beschikbaar"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+msgid "WebAuthn Registered"
+msgstr "WebAuthn Geregistreerd"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
+msgid "WebAuthn credential registered successfully"
+msgstr "WebAuthn inloggegevens succesvol geregistreerd"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
+msgid "Error registering WebAuthn credential"
+msgstr "Fout bij het registreren van WebAuthn inloggegevens"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
+msgid "WebAuthn Registration Failed"
+msgstr "WebAuthn Registratie Mislukt"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
-msgstr ""
+msgstr "Registreren van WebAuthn inloggegevens mislukt"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
-msgstr ""
+msgstr "Fout bij ophalen van WebAuth-registratie"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Tijdgebonden eenmalige wachtwoord"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Eenmalige vooraf gegenereerde recovery codes"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
-msgstr ""
+msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
-msgstr ""
+msgstr "Web Authentication (WebAuthn) is een web-standaard voor beveiligde authenticatie"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Laatst gebruikt op"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Gemaakt op"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Niet geconfigureerd"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "Geen multi-factor tokens geconfigureerd voor dit account"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
-msgstr ""
+msgstr "Registreer verificatiemethode"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
-msgstr ""
+msgstr "Geen MFA-methoden beschikbaar"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
-msgstr ""
+msgstr "Er zijn geen MFA-methoden beschikbaar voor configuratie"
#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:27
msgid "Secret"
@@ -6162,47 +6190,47 @@ msgstr "Eenmalig wachtwoord"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Voer de TOTP-code in om ervoor te zorgen dat deze correct geregistreerd is"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "E-mail adressen"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E-mail adressen"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Enkele aanmelding"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Niet actief"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "Eenmalige aanmelding is niet ingeschakeld voor deze server "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Niet actief"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Eenmalige aanmelding is niet ingeschakeld voor deze server "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Toegang tokens"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Sessie gegevens"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Sessie gegevens"
msgid "Timestamp"
msgstr "Tijdstip"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Methode"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Fout tijdens het bijwerken van e-mail"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "Momenteel zijn er geen e-mailadressen geregistreerd."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "De volgende e-mailadressen zijn gekoppeld aan uw account:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Hoofd"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Gecontroleerd"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Niet-geverifieerd"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Maak primair"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Verificatie opnieuw verzenden"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "E-mailadres toevoegen"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-mailadres"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Fout tijdens het toevoegen van e-mail"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "E-mailadres toevoegen"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-mailadres"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Fout tijdens het toevoegen van e-mail"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "E-mail toevoegen"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Fout tijdens het toevoegen van e-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "E-mail toevoegen"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "Er zijn geen providers verbonden met dit account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "U kunt inloggen op uw account via een van de volgende providers"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Provider link verwijderen"
@@ -6462,27 +6490,27 @@ msgstr "E-mail berichten"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:36
msgid "System Status"
-msgstr ""
+msgstr "Systeem status"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:47
msgid "Admin Center Information"
-msgstr ""
+msgstr "Admin Center informatie"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:53
msgid "The home panel (and the whole Admin Center) is a new feature starting with the new UI and was previously (before 1.0) not available."
-msgstr ""
+msgstr "Het startpaneel (en het hele Admin Center) is een nieuwe functie die begint met de nieuwe UI en die eerder niet beschikbaar was (voor 1.0)."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:60
msgid "The admin center provides a centralized location for all administration functionality and is meant to replace all interaction with the (django) backend admin interface."
-msgstr ""
+msgstr "Het admin centrum biedt een gecentraliseerde locatie voor alle administratie functionaliteit en is bedoeld om alle interactie te vervangen door de (django) beheergedeelte interface."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:67
msgid "Please open feature requests (after checking the tracker) for any existing backend admin functionality you are missing in this UI. The backend admin interface should be used carefully and seldom."
-msgstr ""
+msgstr "Open functie verzoeken (na het controleren van de tracker) voor een bestaande beheerfunctie die u mist in deze gebruikersinterface. De beheerdersinterface moet zorgvuldig en apart worden gebruikt."
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:85
msgid "Quick Actions"
-msgstr ""
+msgstr "Snel acties"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:107
#~ msgid "User Management"
@@ -6490,7 +6518,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/Index.tsx:115
msgid "Home"
-msgstr ""
+msgstr "Home"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:122
msgid "Users / Access"
@@ -6921,7 +6949,7 @@ msgstr "Aangepaste status"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Print bouw order"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Toon externe build orders"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Tabelweergave"
@@ -7245,8 +7274,9 @@ msgstr "Kalenderoverzicht"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
-msgstr ""
+msgstr "Parametrisch zicht"
#: src/pages/company/CompanyDetail.tsx:100
msgid "Website"
@@ -7349,7 +7379,7 @@ msgstr "Externe link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Details onderdelen"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Leveranciersdeel toevoegen"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Geen voorraad"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Basis gebruiker"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Subcategorieën"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Verplaats items naar bovenliggende categorie"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Items verwijderen"
@@ -7599,7 +7629,7 @@ msgstr "Wil je de materiaal rekening voor deze stuklijst valideren?"
#: src/pages/part/PartDetail.tsx:187
msgid "Bill of materials scheduled for validation"
-msgstr ""
+msgstr "Grondstoffen gepland voor validatie"
#: src/pages/part/PartDetail.tsx:187
#~ msgid "BOM validated"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Verkoopbaar onderdeel"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Aangemaakt door"
msgid "Default Supplier"
msgstr "Standaard leverancier"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Standaard vervaldatum"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "Dagen"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Prijs bereik"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Laatste serienummer"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Selecteer onderdeel revisie"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varianten"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Toewijzingen"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Materiaallijst"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Wordt gebruikt in"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Prijzen onderdeel"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Test sjablonen"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Gerelateerde onderdelen"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Onderdeel is vergrendeld"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Onderdeel parameters kunnen niet worden bewerkt, omdat het onderdeel is vergrendeld"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Onderdeel parameters kunnen niet worden bewerkt, omdat het onderdeel is vergrendeld"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Vereist"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
-msgstr ""
+msgstr "Tekort"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Onderdeel toevoegen"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Onderdeel verwijderen"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Verwijderen van dit onderdeel kan niet ongedaan worden gemaakt"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Order"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Voorraad bestelling"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Zoek op serienummer"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Acties van onderdeel"
@@ -8008,8 +8038,8 @@ msgstr "Maximale waarde"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maximale waarde"
msgid "Total Price"
msgstr "Totale prijs"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Onderdeel"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimale prijs"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Maximale prijs"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Maximale prijs"
msgid "Unit Price"
msgstr "Prijs per stuk"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Cirkel diagram"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Staafdiagram"
@@ -8334,13 +8364,13 @@ msgstr "Klantreferentie"
#: src/pages/sales/ReturnOrderDetail.tsx:196
msgid "Return Address"
-msgstr ""
+msgstr "Retouradres"
#: src/pages/sales/ReturnOrderDetail.tsx:202
#: src/pages/sales/SalesOrderDetail.tsx:195
#: src/pages/sales/SalesOrderShipmentDetail.tsx:179
msgid "Not specified"
-msgstr ""
+msgstr "Niet gespecificeerd"
#: src/pages/sales/ReturnOrderDetail.tsx:349
#~ msgid "Order canceled"
@@ -8379,7 +8409,7 @@ msgstr "Voltooide Verzendingen"
#: src/pages/sales/SalesOrderDetail.tsx:189
#: src/pages/sales/SalesOrderShipmentDetail.tsx:168
msgid "Shipping Address"
-msgstr ""
+msgstr "Afleveradres"
#: src/pages/sales/SalesOrderDetail.tsx:317
msgid "Edit Sales Order"
@@ -8447,11 +8477,11 @@ msgstr "Toegewezen items"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:194
msgid "Checked By"
-msgstr ""
+msgstr "Gecontroleerd door"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:200
msgid "Not checked"
-msgstr ""
+msgstr "Niet gecontroleerd"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:206
#: src/tables/ColumnRenderers.tsx:518
@@ -8500,11 +8530,11 @@ msgstr "In behandeling"
#: src/tables/sales/SalesOrderShipmentTable.tsx:168
#: src/tables/sales/SalesOrderShipmentTable.tsx:299
msgid "Checked"
-msgstr ""
+msgstr "Gecontroleerd"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:351
msgid "Not Checked"
-msgstr ""
+msgstr "Niet gecontroleerd"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:357
#: src/tables/sales/SalesOrderShipmentTable.tsx:175
@@ -8529,108 +8559,108 @@ msgstr "Verzending acties"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:410
msgid "Check"
-msgstr ""
+msgstr "Aanvinken"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:411
msgid "Mark shipment as checked"
-msgstr ""
+msgstr "Markeer levering als gecontroleerd"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:417
msgid "Uncheck"
-msgstr ""
+msgstr "Uitvinken"
#: src/pages/sales/SalesOrderShipmentDetail.tsx:418
msgid "Mark shipment as unchecked"
-msgstr ""
+msgstr "Markeer deze levering als niet gecontroleerd"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Bovenliggende locatie"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sub locatie"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Locatie type"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Locatie voorraad topniveau"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Locatie gegevens"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Standaard onderdelen"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Voorraadlocatie bewerken"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Verplaats items naar bovenliggende locatie"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Voorraadlocatie verwijderen"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Artikel actie"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Actie voor voorraad items op deze locatie"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
-msgstr ""
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Voorraadlocatie bewerken"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Verplaats items naar bovenliggende locatie"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Voorraadlocatie verwijderen"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Artikel actie"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Actie voor voorraad items op deze locatie"
+
+#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr "Locaties actie"
+
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Actie voor onderliggende locaties in deze locatie"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Scan voorraad item"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Gescande voorraadartikel op locatie"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Fout bij scannen voorraad item"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Scan voorraad locatie"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Gescande voorraadlocatie op locatie"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Fout bij scannen stock locatie"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Locatie acties"
@@ -8917,6 +8947,7 @@ msgstr "Toon items met een serienummer"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Serienummer"
@@ -9139,12 +9170,12 @@ msgstr "Filter toevoegen"
msgid "Clear Filters"
msgstr "Filters wissen"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Geen gegevens gevonden"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Fout bij laden tabel opties"
@@ -9156,7 +9187,7 @@ msgstr "Fout bij laden tabel opties"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Server heeft onjuist gegevenstype teruggestuurd"
@@ -9176,7 +9207,7 @@ msgstr "Server heeft onjuist gegevenstype teruggestuurd"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Fout bij laden van tabelgegevens"
@@ -9190,13 +9221,13 @@ msgstr "Fout bij laden van tabelgegevens"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Details weergeven"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
-msgstr ""
+msgstr "{model} Bekijken"
#: src/tables/InvenTreeTable.tsx:712
#~ msgid "Table filters"
@@ -9478,21 +9509,21 @@ msgstr "Vervangingen bewerken"
#: src/tables/bom/BomTable.tsx:625
msgid "Add BOM Items"
-msgstr ""
+msgstr "BOM Artikelen toevoegen"
#: src/tables/bom/BomTable.tsx:633
msgid "Add a single BOM item"
-msgstr ""
+msgstr "Voeg een enkel BOM artikel toe"
#: src/tables/bom/BomTable.tsx:637
#: src/tables/general/ParameterTable.tsx:206
#: src/tables/part/PartTable.tsx:546
msgid "Import from File"
-msgstr ""
+msgstr "Importeren uit bestand"
#: src/tables/bom/BomTable.tsx:639
msgid "Import BOM items from a file"
-msgstr ""
+msgstr "BOM Artikelen uit een bestand importeren"
#: src/tables/bom/BomTable.tsx:662
msgid "Bill of materials cannot be edited, as the part is locked"
@@ -9564,7 +9595,7 @@ msgstr "Wijzig voorraadtoewijzing"
#: src/tables/build/BuildLineTable.tsx:664
#: src/tables/sales/SalesOrderAllocationTable.tsx:218
msgid "Remove Allocated Stock"
-msgstr ""
+msgstr "Toegewezen Voorraad Verwijderen"
#: src/tables/build/BuildAllocatedStockTable.tsx:180
#: src/tables/build/BuildLineTable.tsx:663
@@ -9575,7 +9606,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:669
#: src/tables/sales/SalesOrderAllocationTable.tsx:221
msgid "Are you sure you want to remove this allocated stock from the order?"
-msgstr ""
+msgstr "Weet u zeker dat u deze toegewezen voorraad uit de bestelling wilt verwijderen?"
#: src/tables/build/BuildAllocatedStockTable.tsx:242
msgid "Consume"
@@ -9585,7 +9616,7 @@ msgstr "Verbruik"
#: src/tables/build/BuildLineTable.tsx:112
#: src/tables/sales/SalesOrderAllocationTable.tsx:248
msgid "Remove allocated stock"
-msgstr ""
+msgstr "Toegewezen Voorraad Verwijderen"
#: src/tables/build/BuildLineTable.tsx:59
#~ msgid "Show lines with available stock"
@@ -9609,7 +9640,7 @@ msgstr "Toon volledig verbruikte lijnen"
#: src/tables/build/BuildLineTable.tsx:194
msgid "Show items with sufficient available stock"
-msgstr ""
+msgstr "Toon items met voldoende beschikbare voorraad"
#: src/tables/build/BuildLineTable.tsx:199
msgid "Show consumable lines"
@@ -9635,7 +9666,7 @@ msgstr "Toon gevolgde lijnen"
#: src/tables/build/BuildLineTable.tsx:224
msgid "Show items with stock on order"
-msgstr ""
+msgstr "Artikelen met voorraad op bestelling weergeven"
#: src/tables/build/BuildLineTable.tsx:259
#: src/tables/sales/SalesOrderLineItemTable.tsx:172
@@ -9788,7 +9819,7 @@ msgstr "Toon bestellingen met een startdatum"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Bouw uitvoer voorraad toewijzing"
@@ -10049,7 +10080,7 @@ msgstr "Item bekijken"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Regel item toevoegen"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Regel item bewerken"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10086,7 +10117,7 @@ msgstr "Bijgewerkt Door"
#: src/tables/general/ParameterTable.tsx:118
msgid "Show parameters for enabled templates"
-msgstr ""
+msgstr "Parameters voor ingeschakelde templates tonen"
#: src/tables/general/ParameterTable.tsx:124
msgid "Filter by user who last updated the parameter"
@@ -10094,7 +10125,7 @@ msgstr "Filter op gebruiker die de parameter voor het laatst heeft bijgewerkt"
#: src/tables/general/ParameterTable.tsx:154
msgid "Import Parameters"
-msgstr ""
+msgstr "Parameters import"
#: src/tables/general/ParameterTable.tsx:164
#: src/tables/general/ParametricDataTable.tsx:261
@@ -10115,19 +10146,19 @@ msgstr "Parameter verwijderen"
#: src/tables/general/ParameterTable.tsx:191
msgid "Add Parameters"
-msgstr ""
+msgstr "Parameters toevoegen"
#: src/tables/general/ParameterTable.tsx:197
msgid "Create Parameter"
-msgstr ""
+msgstr "Parameter aanmaken"
#: src/tables/general/ParameterTable.tsx:199
msgid "Create a new parameter"
-msgstr ""
+msgstr "Een nieuwe parameter maken"
#: src/tables/general/ParameterTable.tsx:208
msgid "Import parameters from a file"
-msgstr ""
+msgstr "Importeer parameters uit een bestand"
#: src/tables/general/ParameterTemplateTable.tsx:48
#: src/tables/general/ParameterTemplateTable.tsx:197
@@ -10173,7 +10204,7 @@ msgstr "Toon sjablonen met eenheden"
#: src/tables/general/ParameterTemplateTable.tsx:154
msgid "Show enabled templates"
-msgstr ""
+msgstr "Ingeschakelde sjablonen weergeven"
#: src/tables/general/ParameterTemplateTable.tsx:158
#: src/tables/settings/ImportSessionTable.tsx:111
@@ -10183,7 +10214,7 @@ msgstr "Model type"
#: src/tables/general/ParameterTemplateTable.tsx:159
msgid "Filter by model type"
-msgstr ""
+msgstr "Sorteren op model type"
#: src/tables/general/ParametricDataTable.tsx:79
msgid "Click to edit"
@@ -10270,7 +10301,7 @@ msgstr "Handmatige herstart vereist"
#: src/tables/machine/MachineListTable.tsx:343
msgid "General"
-msgstr ""
+msgstr "Algemeen"
#: src/tables/machine/MachineListTable.tsx:353
#: src/tables/machine/MachineListTable.tsx:804
@@ -10292,7 +10323,7 @@ msgstr "Geen fouten gerapporteerd"
#: src/tables/machine/MachineListTable.tsx:431
msgid "Properties"
-msgstr ""
+msgstr "Eigenschappen"
#: src/tables/machine/MachineListTable.tsx:494
#~ msgid "Create machine"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Vereiste voorraad"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Bekijk bouwopdracht"
@@ -10707,7 +10738,7 @@ msgstr "Filter op delen waarop de gebruiker geabonneerd is"
#: src/tables/part/PartTable.tsx:377
msgid "Import Parts"
-msgstr ""
+msgstr "Importeren onderdelen"
#: src/tables/part/PartTable.tsx:464
#: src/tables/part/PartTable.tsx:512
@@ -10724,27 +10755,27 @@ msgstr "Geselecteerde delen bestellen"
#: src/tables/part/PartTable.tsx:534
msgid "Add Parts"
-msgstr ""
+msgstr "Voeg onderdelen toe"
#: src/tables/part/PartTable.tsx:540
msgid "Create Part"
-msgstr ""
+msgstr "Onderdeel maken"
#: src/tables/part/PartTable.tsx:542
msgid "Create a new part"
-msgstr ""
+msgstr "Maak een nieuw onderdeel maken"
#: src/tables/part/PartTable.tsx:548
msgid "Import parts from a file"
-msgstr ""
+msgstr "Importeer onderdelen van een bestand"
#: src/tables/part/PartTable.tsx:553
msgid "Import from Supplier"
-msgstr ""
+msgstr "Importeren van leverancier"
#: src/tables/part/PartTable.tsx:555
msgid "Import parts from a supplier plugin"
-msgstr ""
+msgstr "Onderdelen van een leverancierspagina importeren"
#: src/tables/part/PartTestResultTable.tsx:103
#: src/tables/part/PartTestResultTable.tsx:181
@@ -11167,17 +11198,17 @@ msgstr "Actief deel"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:45
#: src/tables/purchasing/ManufacturerPartTable.tsx:135
msgid "Show manufacturer parts for active internal parts."
-msgstr ""
+msgstr "Laat fabrikantonderdelen zien voor actieve interne onderdelen ."
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:50
#: src/tables/purchasing/ManufacturerPartTable.tsx:140
msgid "Active Manufacturer"
-msgstr ""
+msgstr "Actieve fabrikant"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:51
#: src/tables/purchasing/ManufacturerPartTable.tsx:142
msgid "Show manufacturer parts for active manufacturers."
-msgstr ""
+msgstr "Fabrikantonderdelen tonen voor actieve fabrikant."
#: src/tables/purchasing/ManufacturerPartTable.tsx:63
#~ msgid "Create Manufacturer Part"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Importeer regelitems"
@@ -11222,11 +11253,11 @@ msgstr "Toon regelitems die zijn ontvangen"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Ontvang artikel items"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Items ontvangen"
@@ -11244,7 +11275,7 @@ msgstr "Voeg leveranciers onderdeel toe"
#: src/tables/purchasing/SupplierPartTable.tsx:200
msgid "Import supplier part"
-msgstr ""
+msgstr "Importeer leveranciersonderdeel"
#: src/tables/purchasing/SupplierPartTable.tsx:205
#~ msgid "Supplier part deleted"
@@ -11404,7 +11435,7 @@ msgstr "Voeg verzending toe"
#: src/tables/sales/SalesOrderShipmentTable.tsx:300
msgid "Show shipments which have been checked"
-msgstr ""
+msgstr "Toon verzendingen die zijn gecontroleerd"
#: src/tables/sales/SalesOrderShipmentTable.tsx:305
msgid "Show shipments which have been shipped"
diff --git a/src/frontend/src/locales/no/messages.po b/src/frontend/src/locales/no/messages.po
index 018e691cde..39866d1a71 100644
--- a/src/frontend/src/locales/no/messages.po
+++ b/src/frontend/src/locales/no/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: no\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Norwegian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Slett"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Avbryt"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Handlinger"
@@ -73,7 +73,7 @@ msgstr "Handlinger"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Søk"
@@ -97,12 +97,12 @@ msgstr "Nei"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Nei"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Del"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Deler"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parametere"
@@ -218,14 +219,14 @@ msgstr "Delkategori"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Delkategorier"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Lagervare"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Lagervarer"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Lagerplassering"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Lagerplasseringer"
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Lagerhistorikk"
@@ -340,11 +341,11 @@ msgstr "Innkjøpsordre"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Innkjøpsordrer"
@@ -373,10 +374,10 @@ msgstr "Salgsordre"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Salgsordrer"
@@ -398,10 +399,10 @@ msgstr "Returordre"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Returordrer"
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Produksjonsordrer"
@@ -597,11 +598,11 @@ msgstr "Produksjonsordrer"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr "Strekkode"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Skann"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Skriv ut etikett"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Skriv ut"
@@ -819,19 +820,19 @@ msgstr "Skriv ut"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Skriv ut rapport"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Send"
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Innloggingen mislyktes"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Kontroller inndataene og prøv igjen."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Levering av e-post vellykket"
@@ -1628,7 +1629,7 @@ msgstr "Your username"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Passord"
@@ -1732,7 +1733,7 @@ msgstr "Vert"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API-versjon"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Laster"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Lukk"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Vis"
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Lenker"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentasjon"
@@ -2547,7 +2553,7 @@ msgstr "Innstillinger"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Systeminnstillinger"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Adminsenter"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Logg ut"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Forsendelse"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr "Ingen lagerbeholdning"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "I bestilling"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategori"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategori"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Serienummer"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Serienummer"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Antall"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Rediger innstilling"
@@ -3206,32 +3219,32 @@ msgstr "Rediger innstilling"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Innstilling oppdatert"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Feil ved endring av innstilling"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Rediger del"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Om InvenTree-organisasjonen"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Åpne Navigasjon"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Tildelt"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr "Tildel lagerbeholdning"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Overordnet del-kategori"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr "Tell"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Overfør lager"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Tell beholdning"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Sjekk innboksen for en nullstillingslenke. Dette fungerer bare hvis du har en konto. Sjekk også i spam."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Tilbakestilling feilet"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Passord angitt"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Passordet er blitt satt. Du kan nå logge inn med ditt nye passord"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Passord endret"
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Eksport"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Lagerhandlinger"
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr "Endre Profil"
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr "Engangspassord"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Ikke aktivert"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Ikke aktivert"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Følgende e-postadresser er tilknyttet din konto:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primær"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Bekreftet"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Ubekreftet"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Gjør til primær"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Re-send bekreftelse"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Legg til e-postadresse"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-post"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-postadresse"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Legg til e-postadresse"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-post"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-postadresse"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Legg til e-post"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Legg til e-post"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Underordnede Produksjonsordrer"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Legg til leverandørdel"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Prisområde"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varianter"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Tildelinger"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Stykkliste (BOM)"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Brukt i"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Testmaler"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Relaterte Deler"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Delhandlinger"
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr "Total pris"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Komponent"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr "Enhetspris"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr "Vis elementer som har et serienummer"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Legg til filter"
msgid "Clear Filters"
msgstr "Fjern filtre"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Ingen poster funnet"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Serveren returnerte feil datatype"
@@ -9176,7 +9207,7 @@ msgstr "Serveren returnerte feil datatype"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Legg til ordrelinje"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Rediger ordrelinje"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Motta ordrelinje"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Motta artikler"
diff --git a/src/frontend/src/locales/pl/messages.po b/src/frontend/src/locales/pl/messages.po
index ca7c811430..d4c65ffe26 100644
--- a/src/frontend/src/locales/pl/messages.po
+++ b/src/frontend/src/locales/pl/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: pl\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
@@ -46,9 +46,9 @@ msgstr "Usuń"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Anuluj"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Akcje"
@@ -73,7 +73,7 @@ msgstr "Akcje"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Szukaj"
@@ -97,12 +97,12 @@ msgstr "Nie"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Nie"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Komponent"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Komponenty"
@@ -149,34 +150,34 @@ msgstr "Komponenty"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Parametr"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
#: lib/enums/ModelInformation.tsx:45
#: src/tables/part/PartCategoryTemplateTable.tsx:87
msgid "Parameter Template"
-msgstr ""
+msgstr "Szablon parametru"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Szablony parametrów"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
-msgstr ""
+msgstr "Szablon testów części"
#: lib/enums/ModelInformation.tsx:53
msgid "Part Test Templates"
-msgstr ""
+msgstr "Szablony testów części"
#: lib/enums/ModelInformation.tsx:59
#: src/components/wizards/OrderPartsWizard.tsx:290
@@ -218,14 +219,14 @@ msgstr "Kategoria części"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Kategorie części"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,35 +240,35 @@ msgstr "Element magazynowy"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Elementy magazynowe"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Lokacja stanu"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Lokacje stanów"
#: lib/enums/ModelInformation.tsx:108
msgid "Stock Location Type"
-msgstr ""
+msgstr "Typ lokalizacji magazynowej"
#: lib/enums/ModelInformation.tsx:109
msgid "Stock Location Types"
-msgstr ""
+msgstr "Typy lokalizacji magazynowych"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Historia magazynu"
@@ -285,19 +286,19 @@ msgstr "Kompilacje"
#: lib/enums/ModelInformation.tsx:130
msgid "Build Line"
-msgstr ""
+msgstr "Linia produkcyjna"
#: lib/enums/ModelInformation.tsx:131
msgid "Build Lines"
-msgstr ""
+msgstr "Linie produkcyjne"
#: lib/enums/ModelInformation.tsx:138
msgid "Build Item"
-msgstr ""
+msgstr "Element produkcji"
#: lib/enums/ModelInformation.tsx:139
msgid "Build Items"
-msgstr ""
+msgstr "Elementy produkcji"
#: lib/enums/ModelInformation.tsx:144
#: src/pages/company/CompanyDetail.tsx:345
@@ -340,11 +341,11 @@ msgstr "Zlecenie zakupu"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Zlecenia zakupu"
@@ -373,10 +374,10 @@ msgstr "Zlecenie sprzedaży"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Zlecenia Sprzedaży"
@@ -384,35 +385,35 @@ msgstr "Zlecenia Sprzedaży"
#: lib/enums/ModelInformation.tsx:185
#: src/pages/sales/SalesOrderShipmentDetail.tsx:445
msgid "Sales Order Shipment"
-msgstr ""
+msgstr "Wysyłka zamówienia sprzedaży"
#: lib/enums/ModelInformation.tsx:186
msgid "Sales Order Shipments"
-msgstr ""
+msgstr "Wysyłki zamówień sprzedaży"
#: lib/enums/ModelInformation.tsx:194
#: src/pages/sales/ReturnOrderDetail.tsx:554
#: src/tables/stock/StockTrackingTable.tsx:142
msgid "Return Order"
-msgstr ""
+msgstr "Zwrot zamówienia"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
-msgstr ""
+msgstr "Zwroty zamówień"
#: lib/enums/ModelInformation.tsx:204
msgid "Return Order Line Item"
-msgstr ""
+msgstr "Pozycja zwrotu zamówienia"
#: lib/enums/ModelInformation.tsx:205
msgid "Return Order Line Items"
-msgstr ""
+msgstr "Pozycje zwrotu zamówienia"
#: lib/enums/ModelInformation.tsx:210
#: src/tables/company/AddressTable.tsx:52
@@ -531,12 +532,12 @@ msgstr "Typy zawartości"
#: lib/enums/ModelInformation.tsx:284
msgid "Selection List"
-msgstr ""
+msgstr "Lista wyboru"
#: lib/enums/ModelInformation.tsx:285
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:21
msgid "Selection Lists"
-msgstr ""
+msgstr "Listy wyboru"
#: lib/enums/ModelInformation.tsx:291
#: src/components/barcodes/BarcodeInput.tsx:114
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -577,17 +578,17 @@ msgstr "Błąd"
#: src/tables/machine/MachineListTable.tsx:402
#: src/tables/machine/MachineTypeTable.tsx:297
msgid "Errors"
-msgstr ""
+msgstr "Błędy"
#: lib/enums/Roles.tsx:31
msgid "Admin"
-msgstr ""
+msgstr "Administracja"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Zlecenia wykonania"
@@ -597,11 +598,11 @@ msgstr "Zlecenia wykonania"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Błąd renderowania komponentu"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Wystąpił błąd podczas renderowania tego komponentu. Więcej informacji znajdziesz na konsoli."
@@ -619,7 +620,7 @@ msgstr "Błąd podczas zatrzymywania"
#: src/components/barcodes/BarcodeCameraInput.tsx:159
msgid "Start scanning by selecting a camera and pressing the play button."
-msgstr ""
+msgstr "Rozpocznij skanowanie, wybierając kamerę i naciskając przycisk odtwarzania."
#: src/components/barcodes/BarcodeCameraInput.tsx:180
msgid "Stop scanning"
@@ -637,33 +638,33 @@ msgstr "Kod kreskowy"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
-msgstr ""
+msgstr "Skanuj"
#: src/components/barcodes/BarcodeInput.tsx:53
msgid "Camera Input"
-msgstr ""
+msgstr "Wejście kamery"
#: src/components/barcodes/BarcodeInput.tsx:63
msgid "Scanner Input"
-msgstr ""
+msgstr "Wejście skanera"
#: src/components/barcodes/BarcodeInput.tsx:105
msgid "Barcode Data"
-msgstr ""
+msgstr "Dane kodu kreskowego"
#: src/components/barcodes/BarcodeInput.tsx:109
msgid "No barcode data"
-msgstr ""
+msgstr "Brak danych kodu kreskowego"
#: src/components/barcodes/BarcodeInput.tsx:110
msgid "Scan or enter barcode data"
-msgstr ""
+msgstr "Zeskanuj lub wprowadź dane kodu kreskowego"
#: src/components/barcodes/BarcodeKeyboardInput.tsx:64
msgid "Enter barcode data"
-msgstr ""
+msgstr "Wprowadź dane kodu kreskowego"
#: src/components/barcodes/BarcodeScanDialog.tsx:56
#: src/components/buttons/ScanButton.tsx:27
@@ -675,11 +676,11 @@ msgstr "Zeskanuj kod kreskowy"
#: src/components/barcodes/BarcodeScanDialog.tsx:121
msgid "No matching item found"
-msgstr ""
+msgstr "Nie znaleziono pasującej pozycji"
#: src/components/barcodes/BarcodeScanDialog.tsx:150
msgid "Barcode does not match the expected model type"
-msgstr ""
+msgstr "Kod kreskowy nie pasuje do oczekiwanego typu modelu"
#: src/components/barcodes/BarcodeScanDialog.tsx:161
#: src/components/editors/NotesEditor.tsx:84
@@ -695,12 +696,12 @@ msgstr "Sukces"
#: src/components/barcodes/BarcodeScanDialog.tsx:167
msgid "Failed to handle barcode"
-msgstr ""
+msgstr "Nie udało się przetworzyć kodu kreskowego"
#: src/components/barcodes/BarcodeScanDialog.tsx:183
#: src/pages/Index/Scan.tsx:129
msgid "Failed to scan barcode"
-msgstr ""
+msgstr "Nie udało się zeskanować kodu kreskowego"
#: src/components/barcodes/QRCode.tsx:94
msgid "Low (7%)"
@@ -720,11 +721,11 @@ msgstr "Wysoki (30%)"
#: src/components/barcodes/QRCode.tsx:107
msgid "Custom barcode"
-msgstr ""
+msgstr "Niestandardowy kod kreskowy"
#: src/components/barcodes/QRCode.tsx:108
msgid "A custom barcode is registered for this item. The shown code is not that custom barcode."
-msgstr ""
+msgstr "Dla tej pozycji zarejestrowano niestandardowy kod kreskowy. Wyświetlony kod nie jest tym kodem."
#: src/components/barcodes/QRCode.tsx:127
msgid "Barcode Data:"
@@ -736,7 +737,7 @@ msgstr "Wybierz poziom korekty błędów"
#: src/components/barcodes/QRCode.tsx:170
msgid "Failed to link barcode"
-msgstr ""
+msgstr "Nie udało się powiązać kodu kreskowego"
#: src/components/barcodes/QRCode.tsx:179
#: src/pages/part/PartDetail.tsx:521
@@ -746,11 +747,11 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:120
#: src/pages/stock/StockDetail.tsx:186
msgid "Link"
-msgstr ""
+msgstr "Powiąż"
#: src/components/barcodes/QRCode.tsx:200
msgid "This will remove the link to the associated barcode"
-msgstr ""
+msgstr "Spowoduje to usunięcie powiązania z przypisanym kodem kreskowym"
#: src/components/barcodes/QRCode.tsx:205
#: src/components/items/ActionDropdown.tsx:192
@@ -776,11 +777,11 @@ msgstr "Kopiuj"
#: src/components/buttons/PrintingActions.tsx:56
msgid "Printing Labels"
-msgstr ""
+msgstr "Drukowanie etykiet"
#: src/components/buttons/PrintingActions.tsx:61
msgid "Printing Reports"
-msgstr ""
+msgstr "Drukowanie raportów"
#: src/components/buttons/PrintingActions.tsx:77
#~ msgid "Printing"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Drukuj etykietę"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Wydrukuj"
@@ -819,29 +820,29 @@ msgstr "Wydrukuj"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Drukuj raport"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Akcje druku"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Drukuj etykiety"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Drukuj raporty"
#: src/components/buttons/RemoveRowButton.tsx:9
msgid "Remove this row"
-msgstr ""
+msgstr "Usuń ten wiersz"
#: src/components/buttons/SSOButton.tsx:40
msgid "You will be redirected to the provider for further actions."
-msgstr ""
+msgstr "Zostaniesz przekierowany do dostawcy w celu wykonania dalszych czynności."
#: src/components/buttons/SSOButton.tsx:44
#~ msgid "This provider is not full set up."
@@ -860,16 +861,16 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
-msgstr ""
+msgstr "Otwórz wyszukiwanie"
#: src/components/buttons/StarredToggleButton.tsx:36
msgid "Subscription Updated"
-msgstr ""
+msgstr "Subskrypcja zaktualizowana"
#: src/components/buttons/StarredToggleButton.tsx:57
#~ msgid "Unsubscribe from part"
@@ -877,67 +878,67 @@ msgstr ""
#: src/components/buttons/StarredToggleButton.tsx:66
msgid "Unsubscribe from notifications"
-msgstr ""
+msgstr "Anuluj subskrypcję powiadomień"
#: src/components/buttons/StarredToggleButton.tsx:67
msgid "Subscribe to notifications"
-msgstr ""
+msgstr "Subskrybuj powiadomienia"
#: src/components/calendar/Calendar.tsx:102
#: src/components/calendar/Calendar.tsx:165
msgid "Calendar Filters"
-msgstr ""
+msgstr "Filtry kalendarza"
#: src/components/calendar/Calendar.tsx:117
msgid "Previous month"
-msgstr ""
+msgstr "Poprzedni miesiąc"
#: src/components/calendar/Calendar.tsx:126
msgid "Select month"
-msgstr ""
+msgstr "Wybierz miesiąc"
#: src/components/calendar/Calendar.tsx:147
msgid "Next month"
-msgstr ""
+msgstr "Następny miesiąc"
#: src/components/calendar/Calendar.tsx:178
#: src/tables/InvenTreeTableHeader.tsx:294
msgid "Download data"
-msgstr ""
+msgstr "Eksportuj dane"
#: src/components/calendar/OrderCalendar.tsx:132
msgid "Order Updated"
-msgstr ""
+msgstr "Zamówienie zaktualizowane"
#: src/components/calendar/OrderCalendar.tsx:142
msgid "Error updating order"
-msgstr ""
+msgstr "Błąd aktualizacji zamówienia"
#: src/components/calendar/OrderCalendar.tsx:178
#: src/tables/Filter.tsx:152
msgid "Overdue"
-msgstr ""
+msgstr "Zaległe"
#: src/components/dashboard/DashboardLayout.tsx:282
msgid "Failed to load dashboard widgets."
-msgstr ""
+msgstr "Nie udało się załadować elementów pulpitu."
#: src/components/dashboard/DashboardLayout.tsx:293
msgid "No Widgets Selected"
-msgstr ""
+msgstr "Brak elementów"
#: src/components/dashboard/DashboardLayout.tsx:296
msgid "Use the menu to add widgets to the dashboard"
-msgstr ""
+msgstr "Użyj menu, aby dodać elementy do pulpitu"
#: src/components/dashboard/DashboardMenu.tsx:62
#: src/components/dashboard/DashboardMenu.tsx:138
msgid "Accept Layout"
-msgstr ""
+msgstr "Zatwierdź układ"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -949,15 +950,15 @@ msgstr "Edytuj układ"
#: src/components/dashboard/DashboardMenu.tsx:111
msgid "Add Widget"
-msgstr ""
+msgstr "Dodaj element"
#: src/components/dashboard/DashboardMenu.tsx:120
msgid "Remove Widgets"
-msgstr ""
+msgstr "Usuń elementy"
#: src/components/dashboard/DashboardMenu.tsx:129
msgid "Clear Widgets"
-msgstr ""
+msgstr "Wyczyść elementy"
#: src/components/dashboard/DashboardWidget.tsx:81
msgid "Remove this widget from the dashboard"
@@ -965,19 +966,19 @@ msgstr ""
#: src/components/dashboard/DashboardWidgetDrawer.tsx:77
msgid "Filter dashboard widgets"
-msgstr ""
+msgstr "Filtruj elementy pulpitu"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:98
msgid "Add this widget to the dashboard"
-msgstr ""
+msgstr "Dodaj ten element do pulpitu"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:123
msgid "No Widgets Available"
-msgstr ""
+msgstr "Brak dostępnych elementów"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:124
msgid "There are no more widgets available for the dashboard"
-msgstr ""
+msgstr "Brak kolejnych dostępnych elementów pulpitu"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:24
msgid "Subscribed Parts"
@@ -985,7 +986,7 @@ msgstr "Obserwowane komponenty"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:25
msgid "Show the number of parts which you have subscribed to"
-msgstr ""
+msgstr "Pokaż liczbę kategorii części, które obserwujesz"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:31
msgid "Subscribed Categories"
@@ -993,15 +994,15 @@ msgstr "Obserwowane kategorie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:32
msgid "Show the number of part categories which you have subscribed to"
-msgstr ""
+msgstr "Nieprawidłowe listy materiałowe"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:41
msgid "Invalid BOMs"
-msgstr ""
+msgstr "Nieprawidłowe zestawienia materiałowe BOM"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:42
msgid "Assemblies requiring bill of materials validation"
-msgstr ""
+msgstr "Zespoły wymagające weryfikacji BOM"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:53
#: src/tables/part/PartTable.tsx:263
@@ -1010,63 +1011,63 @@ msgstr "Mała ilość w magazynie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:55
msgid "Show the number of parts which are low on stock"
-msgstr ""
+msgstr "Pokaż liczbę części o niskim stanie magazynowym"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:64
msgid "Required for Build Orders"
-msgstr ""
+msgstr "Wymagane do zleceń produkcyjnych"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:66
msgid "Show parts which are required for active build orders"
-msgstr ""
+msgstr "Pokaż części wymagane do aktywnych zleceń produkcyjnych"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:71
msgid "Expired Stock Items"
-msgstr ""
+msgstr "Pozycje magazynowe po terminie ważności"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:73
msgid "Show the number of stock items which have expired"
-msgstr ""
+msgstr "Pokaż liczbę pozycji magazynowych po terminie ważności"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:79
msgid "Stale Stock Items"
-msgstr ""
+msgstr "Zalegające pozycje magazynowe"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:81
msgid "Show the number of stock items which are stale"
-msgstr ""
+msgstr "Pokaż liczbę zalegających pozycji magazynowych"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:87
msgid "Active Build Orders"
-msgstr ""
+msgstr "Aktywne zlecenia produkcyjne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:89
msgid "Show the number of build orders which are currently active"
-msgstr ""
+msgstr "Pokaż liczbę aktualnie aktywnych zleceń produkcyjnych"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:94
msgid "Overdue Build Orders"
-msgstr ""
+msgstr "Opóźnione zlecenia produkcyjne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:96
msgid "Show the number of build orders which are overdue"
-msgstr ""
+msgstr "Pokaż liczbę opóźnionych zleceń produkcyjnych"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:101
msgid "Assigned Build Orders"
-msgstr ""
+msgstr "Przypisane zlecenia produkcyjne"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:103
msgid "Show the number of build orders which are assigned to you"
-msgstr ""
+msgstr "Pokaż liczbę zleceń produkcyjnych przypisanych do Ciebie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:108
msgid "Active Sales Orders"
-msgstr ""
+msgstr "Aktywne zamówienia sprzedaży"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:110
msgid "Show the number of sales orders which are currently active"
-msgstr ""
+msgstr "Pokaż liczbę aktywnych zamówień sprzedaży"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:115
msgid "Overdue Sales Orders"
@@ -1074,32 +1075,32 @@ msgstr "Zaległe zlecenia sprzedaży"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:117
msgid "Show the number of sales orders which are overdue"
-msgstr ""
+msgstr "Pokaż liczbę zaległych zamówień sprzedaży"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:122
msgid "Assigned Sales Orders"
-msgstr ""
+msgstr "Przypisane zamówienia sprzedaży"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:124
msgid "Show the number of sales orders which are assigned to you"
-msgstr ""
+msgstr "Pokaż liczbę zamówień sprzedaży przypisanych do Ciebie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:129
#: src/pages/sales/SalesIndex.tsx:87
msgid "Pending Shipments"
-msgstr ""
+msgstr "Oczekujące wysyłki"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:131
msgid "Show the number of pending sales order shipments"
-msgstr ""
+msgstr "Pokaż liczbę oczekujących wysyłek zamówień sprzedaży"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:136
msgid "Active Purchase Orders"
-msgstr ""
+msgstr "Aktywne zamówienia zakupu"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:138
msgid "Show the number of purchase orders which are currently active"
-msgstr ""
+msgstr "Pokaż liczbę aktywnych zamówień zakupu"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:143
msgid "Overdue Purchase Orders"
@@ -1107,39 +1108,39 @@ msgstr "Zaległe zlecenia zakupu"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:145
msgid "Show the number of purchase orders which are overdue"
-msgstr ""
+msgstr "Pokaż ilość zaległych zamówień zakupu"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:150
msgid "Assigned Purchase Orders"
-msgstr ""
+msgstr "Przypisane zamówienia zakupu"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:152
msgid "Show the number of purchase orders which are assigned to you"
-msgstr ""
+msgstr "Pokaż ilość zamówień zakupu przypisanych do Ciebie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:157
msgid "Active Return Orders"
-msgstr ""
+msgstr "Aktywne zwroty"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:159
msgid "Show the number of return orders which are currently active"
-msgstr ""
+msgstr "Pokaż liczbę aktywnych zwrotów"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:164
msgid "Overdue Return Orders"
-msgstr ""
+msgstr "Zaległe zwroty"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:166
msgid "Show the number of return orders which are overdue"
-msgstr ""
+msgstr "Pokaż liczbę zaległych zwrotów"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:171
msgid "Assigned Return Orders"
-msgstr ""
+msgstr "Przypisane zwroty"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:173
msgid "Show the number of return orders which are assigned to you"
-msgstr ""
+msgstr "Pokaż liczbę zwrotów przypisanych do Ciebie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:193
#: src/components/dashboard/widgets/GetStartedWidget.tsx:15
@@ -1155,11 +1156,11 @@ msgstr "Pierwsze kroki z InvenTree"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:201
#: src/components/dashboard/widgets/NewsWidget.tsx:123
msgid "News Updates"
-msgstr ""
+msgstr "Aktualności"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:202
msgid "The latest news from InvenTree"
-msgstr ""
+msgstr "Najnowsze wiadomości z InvenTree"
#: src/components/dashboard/widgets/ColorToggleWidget.tsx:18
#: src/components/nav/MainMenu.tsx:93
@@ -1168,15 +1169,15 @@ msgstr "Zmień tryb kolorów"
#: src/components/dashboard/widgets/ColorToggleWidget.tsx:23
msgid "Change the color mode of the user interface"
-msgstr ""
+msgstr "Zmień tryb kolorów interfejsu"
#: src/components/dashboard/widgets/LanguageSelectWidget.tsx:18
msgid "Change Language"
-msgstr ""
+msgstr "Zmień język"
#: src/components/dashboard/widgets/LanguageSelectWidget.tsx:23
msgid "Change the language of the user interface"
-msgstr ""
+msgstr "Zmień język interfejsu"
#: src/components/dashboard/widgets/NewsWidget.tsx:60
#: src/components/nav/NotificationDrawer.tsx:94
@@ -1186,19 +1187,19 @@ msgstr "Oznacz jako przeczytane"
#: src/components/dashboard/widgets/NewsWidget.tsx:115
msgid "Requires Superuser"
-msgstr ""
+msgstr "Wymaga uprawnień superużytkownika"
#: src/components/dashboard/widgets/NewsWidget.tsx:116
msgid "This widget requires superuser permissions"
-msgstr ""
+msgstr "Ten element wymaga uprawnień superużytkownika"
#: src/components/dashboard/widgets/NewsWidget.tsx:133
msgid "No News"
-msgstr ""
+msgstr "Brak wiadomości"
#: src/components/dashboard/widgets/NewsWidget.tsx:134
msgid "There are no unread news items"
-msgstr ""
+msgstr "Brak nieprzeczytanych wiadomości"
#: src/components/details/Details.tsx:117
#~ msgid "Email:"
@@ -1210,18 +1211,18 @@ msgstr ""
#: src/pages/core/UserDetail.tsx:203
#: src/tables/settings/UserTable.tsx:410
msgid "Superuser"
-msgstr ""
+msgstr "Superużytkownik"
#: src/components/details/Details.tsx:124
#: src/pages/core/UserDetail.tsx:87
#: src/pages/core/UserDetail.tsx:200
#: src/tables/settings/UserTable.tsx:405
msgid "Staff"
-msgstr ""
+msgstr "Personel"
#: src/components/details/Details.tsx:125
msgid "Email: "
-msgstr ""
+msgstr "E-mail: "
#: src/components/details/Details.tsx:411
msgid "No name defined"
@@ -1237,11 +1238,11 @@ msgstr "Usunąć powiązany obrazek z tego elementu?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1261,16 +1262,16 @@ msgstr "Kliknij, aby wybrać plik(i)"
#: src/components/details/DetailsImage.tsx:172
msgid "Image uploaded"
-msgstr ""
+msgstr "Obraz przesłany"
#: src/components/details/DetailsImage.tsx:173
msgid "Image has been uploaded successfully"
-msgstr ""
+msgstr "Obraz został pomyślnie przesłany"
#: src/components/details/DetailsImage.tsx:180
#: src/tables/general/AttachmentTable.tsx:201
msgid "Upload Error"
-msgstr ""
+msgstr "Błąd przesyłania"
#: src/components/details/DetailsImage.tsx:250
#: src/components/forms/fields/AutoFillRightSection.tsx:34
@@ -1280,8 +1281,8 @@ msgstr "Wyczyść"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Zatwierdź"
@@ -1295,7 +1296,7 @@ msgstr "Wybierz obraz"
#: src/components/details/DetailsImage.tsx:324
msgid "Download remote image"
-msgstr ""
+msgstr "Pobierz obraz z adres URL"
#: src/components/details/DetailsImage.tsx:339
msgid "Upload new image"
@@ -1311,11 +1312,11 @@ msgstr "Usuń obraz"
#: src/components/details/DetailsImage.tsx:393
msgid "Download Image"
-msgstr ""
+msgstr "Pobierz obraz"
#: src/components/details/DetailsImage.tsx:398
msgid "Image downloaded successfully"
-msgstr ""
+msgstr "Obraz został pomyślnie pobrany"
#: src/components/details/PartIcons.tsx:43
#~ msgid "Part is a template part (variants can be made from this part)"
@@ -1351,7 +1352,7 @@ msgstr "Przesłanie obrazu nie powiodło się"
#: src/components/editors/NotesEditor.tsx:85
msgid "Image uploaded successfully"
-msgstr ""
+msgstr "Obraz został pomyślnie przesłany"
#: src/components/editors/NotesEditor.tsx:119
msgid "Notes saved successfully"
@@ -1363,7 +1364,7 @@ msgstr "Nie udało się zapisać notatek"
#: src/components/editors/NotesEditor.tsx:133
msgid "Error Saving Notes"
-msgstr ""
+msgstr "Błąd zapisywania notatek"
#: src/components/editors/NotesEditor.tsx:151
#~ msgid "Disable Editing"
@@ -1375,11 +1376,11 @@ msgstr "Zapisz notatki"
#: src/components/editors/NotesEditor.tsx:172
msgid "Close Editor"
-msgstr ""
+msgstr "Zamknij edytor"
#: src/components/editors/NotesEditor.tsx:179
msgid "Enable Editing"
-msgstr ""
+msgstr "Włącz edycję"
#: src/components/editors/NotesEditor.tsx:198
#~ msgid "Preview Notes"
@@ -1399,7 +1400,7 @@ msgstr "Kod"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:50
msgid "Error rendering preview"
-msgstr ""
+msgstr "Błąd renderowania podglądu"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:120
msgid "Preview not available, click \"Reload Preview\"."
@@ -1423,7 +1424,7 @@ msgstr "Wystąpił błąd zapisywania szablonu"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:159
msgid "Could not load the template from the server."
-msgstr ""
+msgstr "Nie udało się załadować szablonu z serwera."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:176
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:319
@@ -1436,7 +1437,7 @@ msgstr "Czy na pewno chcesz zapisać i przeładować podgląd?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:183
msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?"
-msgstr ""
+msgstr "Aby wygenerować podgląd, bieżący szablon musi zostać zastąpiony na serwerze Twoimi zmianami, co może uszkodzić etykietę, jeśli jest aktualnie używana. Czy chcesz kontynuować?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187
msgid "Save & Reload"
@@ -1452,7 +1453,7 @@ msgstr "Podgląd został pomyślnie zaktualizowany."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:236
msgid "An unknown error occurred while rendering the preview."
-msgstr ""
+msgstr "Wystąpił nieznany błąd podczas renderowania podglądu."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263
#~ msgid "Save & Reload preview"
@@ -1464,11 +1465,11 @@ msgstr "Odśwież podgląd"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:312
msgid "Use the currently stored template from the server"
-msgstr ""
+msgstr "Użyj aktualnie zapisanego szablonu z serwera"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:320
msgid "Save the current template and reload the preview"
-msgstr ""
+msgstr "Zapisz bieżący szablon i odśwież podgląd"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:322
#~ msgid "to preview"
@@ -1484,11 +1485,11 @@ msgstr "Błąd renderowania szablonu"
#: src/components/errors/ClientError.tsx:23
msgid "Client Error"
-msgstr ""
+msgstr "Błąd klienta"
#: src/components/errors/ClientError.tsx:24
msgid "Client error occurred"
-msgstr ""
+msgstr "Wystąpił błąd klienta"
#: src/components/errors/GenericErrorPage.tsx:50
msgid "Status Code"
@@ -1579,27 +1580,27 @@ msgstr "Zalogowano pomyślnie"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Logowanie nie powiodło się"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Sprawdź dane i spróbuj ponownie."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Wiadomość dostarczona"
#: src/components/forms/AuthenticationForm.tsx:101
msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too."
-msgstr ""
+msgstr "Sprawdź swoją skrzynkę odbiorczą w poszukiwaniu linku logowania. Jeśli masz konto, otrzymasz link logowania. Sprawdź również folder spam."
#: src/components/forms/AuthenticationForm.tsx:105
msgid "Mail delivery failed"
@@ -1628,7 +1629,7 @@ msgstr "Twoja nazwa użytkownika"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Hasło"
@@ -1672,7 +1673,7 @@ msgstr "Wyślij e-mail"
#: src/components/forms/AuthenticationForm.tsx:239
msgid "Passwords do not match"
-msgstr ""
+msgstr "Hasła nie są zgodne"
#: src/components/forms/AuthenticationForm.tsx:256
msgid "Registration successful"
@@ -1688,7 +1689,7 @@ msgstr "Błąd danych wejściowych"
#: src/components/forms/AuthenticationForm.tsx:281
msgid "Check your input and try again. "
-msgstr ""
+msgstr "Sprawdź wprowadzone dane i spróbuj ponownie."
#: src/components/forms/AuthenticationForm.tsx:305
msgid "This will be used for a confirmation"
@@ -1714,11 +1715,11 @@ msgstr "Lub użyj SSO"
#: src/components/forms/AuthenticationForm.tsx:348
msgid "Registration not active"
-msgstr ""
+msgstr "Rejestracja nieaktywna"
#: src/components/forms/AuthenticationForm.tsx:349
msgid "This might be related to missing mail settings or could be a deliberate decision."
-msgstr ""
+msgstr "Może to wynikać z braku konfiguracji poczty lub być celową decyzją."
#: src/components/forms/HostOptionsForm.tsx:36
#: src/components/forms/HostOptionsForm.tsx:67
@@ -1732,7 +1733,7 @@ msgstr "Host"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1768,12 +1769,12 @@ msgstr "Zapisz"
#: src/components/forms/InstanceOptions.tsx:58
msgid "Select Server"
-msgstr ""
+msgstr "Wybierz serwer"
#: src/components/forms/InstanceOptions.tsx:68
#: src/components/forms/InstanceOptions.tsx:92
msgid "Edit host options"
-msgstr ""
+msgstr "Edytuj opcje hosta"
#: src/components/forms/InstanceOptions.tsx:71
#~ msgid "Edit possible host options"
@@ -1781,7 +1782,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:76
msgid "Save host selection"
-msgstr ""
+msgstr "Zapisz wybór hosta"
#: src/components/forms/InstanceOptions.tsx:98
#~ msgid "Version: {0}"
@@ -1818,6 +1819,7 @@ msgstr "Wersja API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1831,36 +1833,36 @@ msgstr "Wtyczki"
#: src/tables/settings/TemplateTable.tsx:362
#: src/tables/stock/StockItemTestResultTable.tsx:419
msgid "Enabled"
-msgstr ""
+msgstr "Włączone"
#: src/components/forms/InstanceOptions.tsx:143
msgid "Disabled"
-msgstr ""
+msgstr "Wyłączone"
#: src/components/forms/InstanceOptions.tsx:149
msgid "Worker"
-msgstr ""
+msgstr "Proces roboczy"
#: src/components/forms/InstanceOptions.tsx:150
#: src/tables/settings/FailedTasksTable.tsx:48
msgid "Stopped"
-msgstr ""
+msgstr "Zatrzymany"
#: src/components/forms/InstanceOptions.tsx:150
msgid "Running"
-msgstr ""
+msgstr "Uruchomiony"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "Wybierz plik do przesłania"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "Akceptuj sugerowaną wartość"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "Wybierz datę"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
@@ -1892,7 +1894,7 @@ msgstr "{0} ikon(y)"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Wczytuję"
@@ -1902,7 +1904,7 @@ msgstr "Nie znaleziono wyników"
#: src/components/forms/fields/TableField.tsx:46
msgid "modelRenderer entry required for tables"
-msgstr ""
+msgstr "Wpis modelRenderer jest wymagany dla tabel"
#: src/components/forms/fields/TableField.tsx:187
msgid "No entries available"
@@ -1910,7 +1912,7 @@ msgstr "Brak wpisów"
#: src/components/forms/fields/TableField.tsx:198
msgid "Add new row"
-msgstr ""
+msgstr "Dodaj nowy wiersz"
#: src/components/images/DetailsImage.tsx:252
#~ msgid "Select image"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Przetwarzanie danych"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Wystąpił błąd"
@@ -2002,31 +2004,31 @@ msgstr "Wybierz kolumnę lub pozostaw puste, aby zignorować to pole."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignoruj to pole"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Odwzorowanie kolumn danych do pól bazy"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Akceptuj mapowanie kolumn"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Pole bazy danych"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Opis pola"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Zaimportowana kolumna"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Wartość domyślna"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Przypisz kolumny"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importuj dane"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2052,7 +2058,7 @@ msgstr "Zakończ import"
#: src/components/importer/ImporterDrawer.tsx:89
msgid "Failed to fetch import session data"
-msgstr ""
+msgstr "Nie udało się pobrać danych sesji importu"
#: src/components/importer/ImporterDrawer.tsx:97
#~ msgid "Cancel import session"
@@ -2071,7 +2077,7 @@ msgstr "Dane zostały zaimportowane"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Zamknij"
@@ -2097,7 +2103,7 @@ msgstr "Status nieznany"
#: src/components/items/ActionDropdown.tsx:135
msgid "Options"
-msgstr ""
+msgstr "Opcje"
#: src/components/items/ActionDropdown.tsx:162
#~ msgid "Link custom barcode"
@@ -2111,7 +2117,7 @@ msgstr "Akcje kodów kreskowych"
#: src/components/items/ActionDropdown.tsx:176
msgid "View Barcode"
-msgstr ""
+msgstr "Wyświetl kod kreskowy"
#: src/components/items/ActionDropdown.tsx:178
msgid "View barcode"
@@ -2123,7 +2129,7 @@ msgstr "Połącz Kod Kreskowy"
#: src/components/items/ActionDropdown.tsx:186
msgid "Link a custom barcode to this item"
-msgstr ""
+msgstr "Powiąż niestandardowy kod kreskowy z tym elementem"
#: src/components/items/ActionDropdown.tsx:194
msgid "Unlink custom barcode"
@@ -2152,7 +2158,7 @@ msgstr "Duplikuj pozycję"
#: src/components/items/ColorToggle.tsx:17
msgid "Toggle color scheme"
-msgstr ""
+msgstr "Przełącz schemat kolorów"
#: src/components/items/DocTooltip.tsx:92
#: src/components/items/GettingStartedCarousel.tsx:20
@@ -2183,7 +2189,7 @@ msgstr "Logo InvenTree"
#: src/components/items/LanguageToggle.tsx:21
msgid "Select language"
-msgstr ""
+msgstr "Wybierz język"
#: src/components/items/OnlyStaff.tsx:10
#: src/components/modals/AboutInvenTreeModal.tsx:50
@@ -2200,36 +2206,36 @@ msgstr "Ta informacja jest dostępna tylko dla użytkowników personelu"
#: src/components/items/RoleTable.tsx:81
msgid "Updating"
-msgstr ""
+msgstr "Aktualizowanie"
#: src/components/items/RoleTable.tsx:82
msgid "Updating group roles"
-msgstr ""
+msgstr "Aktualizowanie ról grupy"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
-msgstr ""
+msgstr "Zaktualizowano"
#: src/components/items/RoleTable.tsx:119
msgid "Group roles updated"
-msgstr ""
+msgstr "Role grupy zostały zaktualizowane"
#: src/components/items/RoleTable.tsx:135
msgid "Role"
-msgstr ""
+msgstr "Rola"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
-msgstr ""
+msgstr "Widok"
#: src/components/items/RoleTable.tsx:145
msgid "Change"
-msgstr ""
+msgstr "Zmień"
#: src/components/items/RoleTable.tsx:150
#: src/forms/StockForms.tsx:941
@@ -2239,36 +2245,36 @@ msgstr "Dodaj"
#: src/components/items/RoleTable.tsx:203
msgid "Reset group roles"
-msgstr ""
+msgstr "Resetuj role grupy"
#: src/components/items/RoleTable.tsx:212
msgid "Reset"
-msgstr ""
+msgstr "Resetuj"
#: src/components/items/RoleTable.tsx:215
msgid "Save group roles"
-msgstr ""
+msgstr "Zapisz role grupy"
#: src/components/items/TransferList.tsx:65
msgid "No items"
-msgstr ""
+msgstr "Brak elementów"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
#: src/tables/stock/StockItemTable.tsx:343
msgid "Available"
-msgstr ""
+msgstr "Dostępne"
#: src/components/items/TransferList.tsx:162
msgid "Selected"
-msgstr ""
+msgstr "Wybrane"
#: src/components/modals/AboutInvenTreeModal.tsx:103
#~ msgid "Your InvenTree version status is"
@@ -2320,13 +2326,13 @@ msgstr "Linki"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentacja"
#: src/components/modals/AboutInvenTreeModal.tsx:181
msgid "Source Code"
-msgstr ""
+msgstr "Kod źródłowy"
#: src/components/modals/AboutInvenTreeModal.tsx:182
msgid "Mobile App"
@@ -2547,7 +2553,7 @@ msgstr "Ustawienia"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Ustawienia systemowe"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centrum Admina"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Wyloguj się"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Wysyłka"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Nieaktywny"
@@ -3001,7 +3007,7 @@ msgstr "Brak w magazynie"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Lokalizacja"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Numer seryjny"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Numer seryjny"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Ilość"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Zmień ustawienia"
@@ -3206,32 +3219,32 @@ msgstr "Zmień ustawienia"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Ustawienie zostało zaktualizowane"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Ustawienie {0} zaktualizowane pomyślnie"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Błąd edycji ustawień"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Nie podano ustawień"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Przejdź do kokpitu InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Odwiedź dokumentację, aby dowiedzieć się więcej o InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "O InvenTree.org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informacje o serwerze"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informacje o licencji"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Otwórz nawigację"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Otwórz główne menu nawigacji"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Przejdź do Centrum Administratora"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Kategoria części nadrzędnej"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr "Ilość"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Dodaj stan"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Usuń stan"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Przenieś stan"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Policz stan"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Zmień status stanu magazynowego"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Wylogowano"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Wylogowano"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Zalogowano"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Hasło ustawione"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Hasło zostało ustawione pomyślnie. Możesz teraz zalogować się przy użyciu nowego hasła"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr "Nie masz konta?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Wyłączone"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Wyłączone"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/pt/messages.po b/src/frontend/src/locales/pt/messages.po
index 6db436bb8c..edf4713cda 100644
--- a/src/frontend/src/locales/pt/messages.po
+++ b/src/frontend/src/locales/pt/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: pt\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Portuguese\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Eliminar"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Cancelar"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Ações"
@@ -73,7 +73,7 @@ msgstr "Ações"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Buscar"
@@ -97,12 +97,12 @@ msgstr "Não"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Não"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Peça"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Peças"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parâmetros"
@@ -218,14 +219,14 @@ msgstr "Categoria da peça"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Categorias da Peça"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Item de Estoque"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Itens de Estoque"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Localização de Stock"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Localizações de Stock"
@@ -267,7 +268,7 @@ msgstr "Tipo de Local de Estoque"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Histórico de Estoque"
@@ -340,11 +341,11 @@ msgstr "Pedido de Compra"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Pedidos de compra"
@@ -373,10 +374,10 @@ msgstr "Pedido de Venda"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Pedidos de vendas"
@@ -398,10 +399,10 @@ msgstr "Pedido de Devolução"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Pedidos de Devolução"
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Ordens de Produções"
@@ -597,11 +598,11 @@ msgstr "Ordens de Produções"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Erro ao renderizar componente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Ocorreu um erro ao renderizar este componente. Consulte o console para obter mais informações."
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Imprimir Etiqueta"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Imprimir Relatório"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Opções de Impressão"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Imprimir Etiquetas"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Imprimir Relatórios"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Remover a imagem associada a este item?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Apagar"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Enviar"
@@ -1580,21 +1581,21 @@ msgstr "Sessão iniciada com sucesso"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Não foi possível iniciar a sessão"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Verifique suas informações e tente novamente."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Envio bem sucedido"
@@ -1629,7 +1630,7 @@ msgstr "O seu nome de utilizador"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Palavra-chave"
@@ -1733,7 +1734,7 @@ msgstr "Servidor"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1819,6 +1820,7 @@ msgstr "Versão da API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1893,7 +1895,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "A carregar"
@@ -1980,10 +1982,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2003,31 +2005,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2040,9 +2042,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2072,7 +2078,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2209,7 +2215,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2224,7 +2230,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2256,10 +2262,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2321,7 +2327,7 @@ msgstr "Ligações"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentação"
@@ -2548,7 +2554,7 @@ msgstr "Configurações"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2566,7 +2572,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2579,14 +2585,14 @@ msgstr "Definições de Sistema"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centro de Administração"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2619,9 +2625,9 @@ msgstr "Encerrar sessão"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2706,7 +2712,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2820,7 +2826,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2980,7 +2986,7 @@ msgstr "Envios"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inativo"
@@ -3002,7 +3008,7 @@ msgstr "Sem Estoque"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3012,7 +3018,7 @@ msgstr "No Pedido"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3037,7 +3043,7 @@ msgstr "Categoria"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3045,9 +3051,9 @@ msgstr "Categoria"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3061,17 +3067,16 @@ msgstr "Localização"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Número de Série"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3079,7 +3084,7 @@ msgstr "Número de Série"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3096,18 +3101,18 @@ msgid "Quantity"
msgstr "Quantidade"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Lote"
@@ -3194,11 +3199,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Editar Configurações"
@@ -3207,32 +3220,32 @@ msgstr "Editar Configurações"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Definição atualizada"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Definição {0} atualizada com sucesso"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Erro ao editar configuração"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Nenhuma configuração especificada"
@@ -3683,7 +3696,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Editar Peça"
@@ -3771,13 +3784,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4039,77 +4052,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Ir para o painel do InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Visite a documentação para saber mais sobre o InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Sobre a organização InvenTree"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informações do Servidor"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informações de licença"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licenças para as dependências do serviço"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Abrir a navegação"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Abrir o menu de navegação principal"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4375,22 +4392,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Saída da Produção"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4417,11 +4434,11 @@ msgstr ""
msgid "Status"
msgstr "Estado"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Concluir Saídas de Produção"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "O Pedido de produção foi concluído"
@@ -4429,24 +4446,24 @@ msgstr "O Pedido de produção foi concluído"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Cancelar Saída de Produção"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Os Pedidos de produção foram cancelados"
@@ -4454,24 +4471,24 @@ msgstr "Os Pedidos de produção foram cancelados"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Cancelar Saída de Produção"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Os Pedidos de produção foram cancelados"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4493,30 +4510,30 @@ msgstr "Os Pedidos de produção foram cancelados"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Alocado"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Localização de Origem"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4526,37 +4543,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr "Alocar estoque"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4573,8 +4590,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4582,23 +4603,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Categoria parente da peça"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4691,8 +4708,8 @@ msgstr "Armazenar com estoque já recebido"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4855,145 +4872,145 @@ msgstr ""
msgid "Count"
msgstr "Contar"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Adicionar Estoque"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Remover Estoque"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Transferir Estoque"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Contar Estoque"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Alterar estado do Estoque"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Mesclar Estoque"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Excluir Itens de Estoque"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Localização parente de Estoque"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5063,99 +5080,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Sessão terminada"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Sessão terminada"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Sessão terminada com sucesso"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Verifique a sua caixa de entrada com um link para redefinir. Isso só funciona se você já tiver uma conta. Cheque no também no spam."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Falha ao redefinir"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Sessão Iniciada"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Sessão iniciada com êxito"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Palavra-passe definida"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "A senha foi definida com sucesso. Você agora pode fazer login com sua nova senha"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5211,11 +5239,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5301,7 +5329,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Ações de Estoque"
@@ -5384,12 +5412,12 @@ msgstr "Não possui conta?\n"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5887,7 +5915,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5934,220 +5962,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6163,47 +6191,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Não habilitado"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Não habilitado"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6211,61 +6239,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Os seguintes endereços de e-mail estão associados à sua conta:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primário"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verificado"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Não verificado"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Tornar Primária"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Reenviar Verificação"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Adicionar Endereço de Email"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Endereço de E-mail"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Adicionar Endereço de Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Endereço de E-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6275,23 +6299,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Adicionar Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Adicionar Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6922,7 +6950,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7059,7 +7087,7 @@ msgid "Child Build Orders"
msgstr "Pedido de Produção Filho"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7226,6 +7254,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7246,6 +7275,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7350,7 +7380,7 @@ msgstr "Link Externo"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Detalhes da Peça"
@@ -7449,7 +7479,7 @@ msgid "Add Supplier Part"
msgstr "Adicionar Fornecedor da Peça"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Sem Estoque"
@@ -7497,7 +7527,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7513,7 +7543,7 @@ msgid "Subcategories"
msgstr "Sub-categorias"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7542,7 +7572,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Eliminar itens"
@@ -7755,7 +7785,7 @@ msgid "Saleable Part"
msgstr "Peça vendível"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7779,117 +7809,117 @@ msgstr "Criado por"
msgid "Default Supplier"
msgstr "Fornecedor Padrão"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Intervalo de Preço"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Variantes"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Alocações"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Lista de Materiais"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Utilizado em"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Preço da Peça"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Modelos de Teste"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Peças Relacionadas"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Obrigatório"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Adicionar Peça"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Excluir Peça"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "A exclusão desta parte não pode ser revertida"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Encomendar Estoque"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Ações da Peça"
@@ -8009,8 +8039,8 @@ msgstr "Valor Máximo"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8022,20 +8052,20 @@ msgstr "Valor Máximo"
msgid "Total Price"
msgstr "Preço Total"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Componente"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Preço Mínimo"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8049,7 +8079,7 @@ msgstr "Preço Máximo"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8063,11 +8093,11 @@ msgstr "Preço Máximo"
msgid "Unit Price"
msgstr "Preço Unitário"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Gráfico circular"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Gráfico de Barras"
@@ -8544,94 +8574,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Localização Parente"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sub-locais"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Tipo de Localização"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Local de estoque de alto nível"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Detalhes da localização"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Peças padrão"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Editar Local de Estoque"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Editar Local de Estoque"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Ações do item"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Ações para itens de estoque nesta localização"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Editar Local de Estoque"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Editar Local de Estoque"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Ações do item"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Ações para itens de estoque nesta localização"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Ação para locais filhos nesta localização"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Ações de localização"
@@ -8918,6 +8948,7 @@ msgstr "Mostrar itens que têm um número de série"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9140,12 +9171,12 @@ msgstr "Adicionar Filtro"
msgid "Clear Filters"
msgstr "Limpar Filtros"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Nenhum registo encontrado"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9157,7 +9188,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "O servidor retornou dados incorretos"
@@ -9177,7 +9208,7 @@ msgstr "O servidor retornou dados incorretos"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9191,11 +9222,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9789,7 +9820,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10050,7 +10081,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10059,14 +10090,14 @@ msgid "Add Line Item"
msgstr "Adicionar item de linha"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Editar item de linha"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10468,7 +10499,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11197,7 +11228,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11223,11 +11254,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Receber item de linha"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Receber itens"
diff --git a/src/frontend/src/locales/pt_BR/messages.po b/src/frontend/src/locales/pt_BR/messages.po
index 3541429a6f..7309b2f337 100644
--- a/src/frontend/src/locales/pt_BR/messages.po
+++ b/src/frontend/src/locales/pt_BR/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: pt\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Portuguese, Brazilian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Excluir"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Cancelar"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Ações"
@@ -73,7 +73,7 @@ msgstr "Ações"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Buscar"
@@ -97,12 +97,12 @@ msgstr "Não"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Não"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Peça"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Peças"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parâmetros"
@@ -218,14 +219,14 @@ msgstr "Categoria da Peça"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Categorias de Peça"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Item de estoque"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Itens de Estoque"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Localização do estoque"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Locais de estoque"
@@ -267,7 +268,7 @@ msgstr "Categoria de Localização de Estoque"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Histórico de estoque"
@@ -340,11 +341,11 @@ msgstr "Pedido de Compra"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Pedidos de compra"
@@ -373,10 +374,10 @@ msgstr "Pedido de Venda"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Pedidos de vendas"
@@ -398,10 +399,10 @@ msgstr "Pedido de Devolução"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Pedidos de Devolução"
@@ -546,23 +547,23 @@ msgstr "Listas de Seleção"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Ordens de Produções"
@@ -597,11 +598,11 @@ msgstr "Ordens de Produções"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Erro ao renderizar componente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Um erro ocorreu ao renderizar este componente. Verifique o console para mais informações."
@@ -637,7 +638,7 @@ msgstr "Código de barras"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Escanear"
@@ -798,12 +799,12 @@ msgstr "Imprimir Relatórios"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Imprimir etiqueta"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Imprimir"
@@ -819,19 +820,19 @@ msgstr "Imprimir"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Imprimir Relatório"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Ações de Impressão"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Imprimir Etiquetas"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Imprimir Relatórios"
@@ -860,8 +861,8 @@ msgstr "Você será redirecionado para o provedor para outras ações."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Abrir Leitor de Código QR"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Aceitar Layout"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Remover imagem associada a este item?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Limpar"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Enviar"
@@ -1579,21 +1580,21 @@ msgstr "Autenticação realizada com sucesso"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Falha ao acessar"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Verifique sua entrada e tente novamente."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Envio de e-mail concluído"
@@ -1628,7 +1629,7 @@ msgstr "Seu nome de usuário"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Senha"
@@ -1732,7 +1733,7 @@ msgstr "Servidor"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Versão da API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "Ícones {0}"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Carregando"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Processando dados"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Ocorreu um erro"
@@ -2002,31 +2004,31 @@ msgstr "Selecione uma coluna, ou deixe em branco para ignorar este campo."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignorar esse campo"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mapeando colunas de dados para campos no banco de dados"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Aceitar mapeamento de coluna"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Campo do banco de dados"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Descrição do Campo"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Coluna importada"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Valor Padrão"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mapear colunas"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importar dados"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Dados importados com sucesso"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Fechar"
@@ -2208,7 +2214,7 @@ msgstr "Atualizando funções de grupo"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Função"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Visualizar"
@@ -2255,10 +2261,10 @@ msgstr "Nenhum item"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Links"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Documentação"
@@ -2547,7 +2553,7 @@ msgstr "Configurações"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Configurações de usuário"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Configurações do Sistema"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Centro de Administração"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Sair"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Remessa"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inativo"
@@ -3001,7 +3007,7 @@ msgstr "Sem Estoque"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "No pedido"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Categoria"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Categoria"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Localização"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Número de Série"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Número de Série"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Quantidade"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Lote"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Editar configurações"
@@ -3206,32 +3219,32 @@ msgstr "Editar configurações"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Configurações atualizadas"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Configuração {0} atualizada com sucesso"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Erro ao editar configuração"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Nenhuma configuração especificada"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Editar Peça"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Pedir Peças"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Ir para o Dashboard do InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Visite a documentação para aprender mais sobre o InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Sobre a organização InvenTree"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informações do Servidor"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informações de Licença"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licenças para dependências de serviços"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Abrir Navegação"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Abrir o menu de navegação principal"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Leia um código de barras ou um código QR"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Ir para o Centro de Administração"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Saída da Produção"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Estado"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Concluir Saídas de Produção"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Saídas de produção foram completadas"
@@ -4428,24 +4445,24 @@ msgstr "Saídas de produção foram completadas"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Sucatear Saídas de Produção"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Saídas de produção foram sucateadas"
@@ -4453,24 +4470,24 @@ msgstr "Saídas de produção foram sucateadas"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Cancelar Saídas de Produção"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Saídas de produção foram canceladas"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Saídas de produção foram canceladas"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Alocado"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Local de Origem"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Selecione o local de origem para alocação de estoque"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Selecione o local de origem para alocação de estoque"
msgid "Allocate Stock"
msgstr "Alocar Estoque"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Itens de estoque alocados"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Itens de estoque alocados"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Inscrito"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Categoria de peça parental"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr "Armazenar com estoque já recebido"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Voltar"
msgid "Count"
msgstr "Contar"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Adicionar Estoque"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Estoque adicionado"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Remover Estoque"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Estoque removido"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Transferir Estoque"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Estoque transferido"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Contar Estoque"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Mudar estado do estoque"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Mesclar estoque"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Excluir Item de Estoque"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Estoque excluído"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Local de estoque pai"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Encontrar Número de Série"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Nenhum item correspondente"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Vários itens correspondentes"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Resposta inválida do servidor"
@@ -5062,99 +5079,110 @@ msgstr "Erro interno do servidor"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Já logado"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Desconectado"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Desconectado"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Deslogado com sucesso"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Tema alterado"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Verifique sua caixa de entrada para o link de redefinição. Isso só funciona se você tiver uma conta. Cheque no spam também."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "A redefinação falhou"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Já logado"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Logado"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Logado com sucesso"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Senha definida"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Sua senha foi alterada com sucesso. Agora você pode acessar usando sua nova senha"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "A senha não pode ser alterada"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Senha alterada"
@@ -5210,11 +5238,11 @@ msgstr "A solicitação excedeu o tempo"
msgid "Exporting Data"
msgstr "Exportando Dados"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Exportar Dados"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Exportar"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Ações de Estoque"
@@ -5383,12 +5411,12 @@ msgstr "Não possui uma conta?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Cargo"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Tipo"
@@ -5933,220 +5961,220 @@ msgstr "Editar Perfil"
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Criado em"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Não Configurado"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr "Senha de uso único"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Endereço de e-mail"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Endereço de e-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Não habilitado"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Não habilitado"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Tokens de Acesso"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Os seguintes endereços de e-mail estão associados à sua conta:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Principal"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verificado"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Não Verificado"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Tornar Principal"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Reenviar Verificação"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Adicionar E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-mail"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Endereço de e-mail"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Adicionar E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Endereço de e-mail"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Adicionar E-mail"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Adicionar E-mail"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr "Status Personalizado"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Pedido de Produção Filhos"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Link Externo"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Detalhes da Peça"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Adicionar Peça do Fornecedor"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Sem Estoque"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Usuário básico"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Sub-categorias"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Apagar items"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Parte vendível"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Criado por"
msgid "Default Supplier"
msgstr "Fornecedor Padrão"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Validade Padrão"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "dias"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Faixa de Preço"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Último Número de Série"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Selecionar Revisão de Parte"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Variantes"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Alocações"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Lista de Materiais"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Usado em"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Preço de Peça"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Testar Modelos"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Peças Relacionadas"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Os parâmetros da peça não podem ser editados, pois a peça está bloqueada"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Os parâmetros da peça não podem ser editados, pois a peça está bloqueada"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Obrigatório"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Adicionar Parte"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Excluir Peça"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Excluir esta peça não é reversível"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Pedido"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Pedir estoque"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Ações da Peça"
@@ -8008,8 +8038,8 @@ msgstr "Valor máximo"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Valor máximo"
msgid "Total Price"
msgstr "Preço Total"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Componente"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Preço Mínimo"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Preço Máximo"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Preço Máximo"
msgid "Unit Price"
msgstr "Preço Unitário"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Gráfico Pizza"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Grafico de Barras"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Localização Pai"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Sub-locais"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Tipo de Localização"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Local de estoque de alto nível"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Detalhes da localização"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Peças Padrão"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Editar Local de Estoque"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Excluir Local de Estoque"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Ação do Item"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Ação de itens de estoque neste local de estoque"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Editar Local de Estoque"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Excluir Local de Estoque"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Ação do Item"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Ação de itens de estoque neste local de estoque"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Ação para localizações filhas deste local"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Ações de Localização"
@@ -8917,6 +8947,7 @@ msgstr "Mostrar itens com um número de série"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Adicionar Filtro"
msgid "Clear Filters"
msgstr "Limpar Filtros"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Nenhum registro encontrado"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "O servidor retornou um tipo de dado incorreto"
@@ -9176,7 +9207,7 @@ msgstr "O servidor retornou um tipo de dado incorreto"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Adicionar Item de Linha"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Editar Item de Linha"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Importar Itens da Linha"
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Receber item de linha"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Receber itens"
diff --git a/src/frontend/src/locales/ro/messages.po b/src/frontend/src/locales/ro/messages.po
index a121585bb0..1e66f7a0ec 100644
--- a/src/frontend/src/locales/ro/messages.po
+++ b/src/frontend/src/locales/ro/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: ro\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Romanian\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n"
@@ -22,12 +22,12 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:289
#: src/pages/Index/Scan.tsx:64
msgid "Duplicate"
-msgstr ""
+msgstr "Duplicare"
#: lib/components/RowActions.tsx:46
#: src/components/items/ActionDropdown.tsx:245
msgid "Edit"
-msgstr ""
+msgstr "Editare"
#: lib/components/RowActions.tsx:56
#: src/components/forms/ApiForm.tsx:754
@@ -37,7 +37,7 @@ msgstr ""
#: src/pages/Notifications.tsx:109
#: src/tables/plugin/PluginListTable.tsx:243
msgid "Delete"
-msgstr ""
+msgstr "Șterge"
#: lib/components/RowActions.tsx:66
#: src/components/details/DetailsImage.tsx:83
@@ -46,13 +46,13 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
-msgstr ""
+msgstr "Anulează"
#: lib/components/RowActions.tsx:136
#: src/components/nav/NavigationDrawer.tsx:190
@@ -62,10 +62,10 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
-msgstr ""
+msgstr "Acțiuni"
#: lib/components/SearchInput.tsx:34
#: src/components/forms/fields/RelatedModelField.tsx:479
@@ -73,36 +73,36 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
-msgstr ""
+msgstr "Caută"
#: lib/components/YesNoButton.tsx:20
msgid "Pass"
-msgstr ""
+msgstr "Treceți"
#: lib/components/YesNoButton.tsx:21
msgid "Fail"
-msgstr ""
+msgstr "Eșec"
#: lib/components/YesNoButton.tsx:43
#: src/tables/Filter.tsx:35
msgid "Yes"
-msgstr ""
+msgstr "Da"
#: lib/components/YesNoButton.tsx:44
#: src/tables/Filter.tsx:36
msgid "No"
-msgstr ""
+msgstr "Nu"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,17 +113,18 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
msgid "Part"
-msgstr ""
+msgstr "Piesă"
#: lib/enums/ModelInformation.tsx:30
#: lib/enums/Roles.tsx:35
@@ -134,9 +135,9 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
-msgstr ""
+msgstr "Piese"
#: lib/enums/ModelInformation.tsx:37
#: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:13
@@ -149,34 +150,34 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Parametru"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
-msgstr ""
+msgstr "Parametri"
#: lib/enums/ModelInformation.tsx:45
#: src/tables/part/PartCategoryTemplateTable.tsx:87
msgid "Parameter Template"
-msgstr ""
+msgstr "Șablon de Parametru"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Șabloane de Parametru"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
-msgstr ""
+msgstr "Șablon de Testare Parte"
#: lib/enums/ModelInformation.tsx:53
msgid "Part Test Templates"
-msgstr ""
+msgstr "Șabloane de Testare Parte"
#: lib/enums/ModelInformation.tsx:59
#: src/components/wizards/OrderPartsWizard.tsx:290
@@ -188,12 +189,12 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:83
#: src/tables/stock/StockItemTable.tsx:247
msgid "Supplier Part"
-msgstr ""
+msgstr "Piesă Furnizor"
#: lib/enums/ModelInformation.tsx:60
#: src/pages/purchasing/PurchasingIndex.tsx:128
msgid "Supplier Parts"
-msgstr ""
+msgstr "Piese Furnizor"
#: lib/enums/ModelInformation.tsx:69
#: src/pages/company/ManufacturerPartDetail.tsx:288
@@ -201,103 +202,103 @@ msgstr ""
#: src/tables/part/PartPurchaseOrdersTable.tsx:56
#: src/tables/stock/StockItemTable.tsx:253
msgid "Manufacturer Part"
-msgstr ""
+msgstr "Piesa Producătorului"
#: lib/enums/ModelInformation.tsx:70
#: src/pages/purchasing/PurchasingIndex.tsx:177
msgid "Manufacturer Parts"
-msgstr ""
+msgstr "Piesele Producătorului"
#: lib/enums/ModelInformation.tsx:79
#: src/pages/part/CategoryDetail.tsx:371
#: src/tables/Filter.tsx:389
msgid "Part Category"
-msgstr ""
+msgstr "Categorie Piesă"
#: lib/enums/ModelInformation.tsx:80
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
-msgstr ""
+msgstr "Categorii Piese"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
#: src/tables/stock/StockTrackingTable.tsx:48
#: src/tables/stock/StockTrackingTable.tsx:55
msgid "Stock Item"
-msgstr ""
+msgstr "Stochează Articol"
#: lib/enums/ModelInformation.tsx:89
#: lib/enums/Roles.tsx:45
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
-msgstr ""
+msgstr "Stochează Articole"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
-msgstr ""
+msgstr "Locația Stocului"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
-msgstr ""
+msgstr "Locațiile Stocului"
#: lib/enums/ModelInformation.tsx:108
msgid "Stock Location Type"
-msgstr ""
+msgstr "Tipul Locației Stocului"
#: lib/enums/ModelInformation.tsx:109
msgid "Stock Location Types"
-msgstr ""
+msgstr "Tipurile Locației Stocului"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
-msgstr ""
+msgstr "Istoric Stoc"
#: lib/enums/ModelInformation.tsx:115
msgid "Stock Histories"
-msgstr ""
+msgstr "Istoricele Stocului"
#: lib/enums/ModelInformation.tsx:120
msgid "Build"
-msgstr ""
+msgstr "Asamblează"
#: lib/enums/ModelInformation.tsx:121
msgid "Builds"
-msgstr ""
+msgstr "Asamblări"
#: lib/enums/ModelInformation.tsx:130
msgid "Build Line"
-msgstr ""
+msgstr "Linie de Asamblare"
#: lib/enums/ModelInformation.tsx:131
msgid "Build Lines"
-msgstr ""
+msgstr "Linii de Asamblare"
#: lib/enums/ModelInformation.tsx:138
msgid "Build Item"
-msgstr ""
+msgstr "Construiește Obiect"
#: lib/enums/ModelInformation.tsx:139
msgid "Build Items"
-msgstr ""
+msgstr "Construiește Obiecte"
#: lib/enums/ModelInformation.tsx:144
#: src/pages/company/CompanyDetail.tsx:345
@@ -305,11 +306,11 @@ msgstr ""
#: src/tables/company/ContactTable.tsx:67
#: src/tables/company/ParametricCompanyTable.tsx:18
msgid "Company"
-msgstr ""
+msgstr "Companie"
#: lib/enums/ModelInformation.tsx:145
msgid "Companies"
-msgstr ""
+msgstr "Companii"
#: lib/enums/ModelInformation.tsx:152
#: src/pages/build/BuildDetail.tsx:317
@@ -320,12 +321,12 @@ msgstr ""
#: src/tables/Filter.tsx:286
#: src/tables/TableHoverCard.tsx:101
msgid "Project Code"
-msgstr ""
+msgstr "Cod Proiect"
#: lib/enums/ModelInformation.tsx:153
#: src/pages/Index/Settings/AdminCenter/Index.tsx:172
msgid "Project Codes"
-msgstr ""
+msgstr "Coduri Proiecte"
#: lib/enums/ModelInformation.tsx:159
#: src/components/wizards/OrderPartsWizard.tsx:338
@@ -336,26 +337,26 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:239
#: src/tables/stock/StockTrackingTable.tsx:120
msgid "Purchase Order"
-msgstr ""
+msgstr "Achiziționează Comanda"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
-msgstr ""
+msgstr "Achiziționează Comenzi"
#: lib/enums/ModelInformation.tsx:169
msgid "Purchase Order Line"
-msgstr ""
+msgstr "Linii Comandă de Cumpărare"
#: lib/enums/ModelInformation.tsx:170
msgid "Purchase Order Lines"
-msgstr ""
+msgstr "Linii Comenzi de Cumpărare"
#: lib/enums/ModelInformation.tsx:175
#: src/pages/build/BuildDetail.tsx:290
@@ -369,60 +370,60 @@ msgstr ""
#: src/tables/sales/SalesOrderShipmentTable.tsx:143
#: src/tables/stock/StockTrackingTable.tsx:131
msgid "Sales Order"
-msgstr ""
+msgstr "Comandă de Vânzare"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
-msgstr ""
+msgstr "Comenzi de Vânzare"
#: lib/enums/ModelInformation.tsx:185
#: src/pages/sales/SalesOrderShipmentDetail.tsx:445
msgid "Sales Order Shipment"
-msgstr ""
+msgstr "Livrare Comandă de Vânzare"
#: lib/enums/ModelInformation.tsx:186
msgid "Sales Order Shipments"
-msgstr ""
+msgstr "Linie Comandă de Vânzare"
#: lib/enums/ModelInformation.tsx:194
#: src/pages/sales/ReturnOrderDetail.tsx:554
#: src/tables/stock/StockTrackingTable.tsx:142
msgid "Return Order"
-msgstr ""
+msgstr "Returnează Comanda"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
-msgstr ""
+msgstr "Returnează Comenzile"
#: lib/enums/ModelInformation.tsx:204
msgid "Return Order Line Item"
-msgstr ""
+msgstr "Element linie comandă de returnare"
#: lib/enums/ModelInformation.tsx:205
msgid "Return Order Line Items"
-msgstr ""
+msgstr "Element linie comandă de returnare"
#: lib/enums/ModelInformation.tsx:210
#: src/tables/company/AddressTable.tsx:52
msgid "Address"
-msgstr ""
+msgstr "Adresă"
#: lib/enums/ModelInformation.tsx:211
#: src/pages/company/CompanyDetail.tsx:265
msgid "Addresses"
-msgstr ""
+msgstr "Adrese"
#: lib/enums/ModelInformation.tsx:217
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:89
@@ -431,22 +432,22 @@ msgstr ""
#: src/pages/sales/ReturnOrderDetail.tsx:208
#: src/pages/sales/SalesOrderDetail.tsx:201
msgid "Contact"
-msgstr ""
+msgstr "Contact"
#: lib/enums/ModelInformation.tsx:218
#: src/pages/company/CompanyDetail.tsx:259
#: src/pages/core/CoreIndex.tsx:33
msgid "Contacts"
-msgstr ""
+msgstr "Contacte"
#: lib/enums/ModelInformation.tsx:224
#: src/tables/ColumnRenderers.tsx:444
msgid "Owner"
-msgstr ""
+msgstr "Proprietar"
#: lib/enums/ModelInformation.tsx:225
msgid "Owners"
-msgstr ""
+msgstr "Proprietari"
#: lib/enums/ModelInformation.tsx:231
#: src/pages/Auth/ChangePassword.tsx:36
@@ -461,7 +462,7 @@ msgstr ""
#: src/tables/stock/StockTrackingTable.tsx:190
#: src/tables/stock/StockTrackingTable.tsx:218
msgid "User"
-msgstr ""
+msgstr "Utilizator"
#: lib/enums/ModelInformation.tsx:232
#: src/components/nav/NavigationDrawer.tsx:105
@@ -469,12 +470,12 @@ msgstr ""
#: src/pages/core/CoreIndex.tsx:21
#: src/pages/core/UserDetail.tsx:226
msgid "Users"
-msgstr ""
+msgstr "Utilizatori"
#: lib/enums/ModelInformation.tsx:238
#: src/pages/core/GroupDetail.tsx:78
msgid "Group"
-msgstr ""
+msgstr "Grup"
#: lib/enums/ModelInformation.tsx:239
#: src/components/nav/NavigationDrawer.tsx:111
@@ -484,59 +485,59 @@ msgstr ""
#: src/pages/core/UserDetail.tsx:99
#: src/tables/settings/UserTable.tsx:276
msgid "Groups"
-msgstr ""
+msgstr "Grupuri"
#: lib/enums/ModelInformation.tsx:246
msgid "Import Session"
-msgstr ""
+msgstr "Import sesiune"
#: lib/enums/ModelInformation.tsx:247
msgid "Import Sessions"
-msgstr ""
+msgstr "Importă sesiuni"
#: lib/enums/ModelInformation.tsx:254
msgid "Label Template"
-msgstr ""
+msgstr "Sablon eticheta"
#: lib/enums/ModelInformation.tsx:255
#: src/pages/Index/Settings/AdminCenter/Index.tsx:209
msgid "Label Templates"
-msgstr ""
+msgstr "Șabloane de etichetare"
#: lib/enums/ModelInformation.tsx:262
msgid "Report Template"
-msgstr ""
+msgstr "Şablon de raport"
#: lib/enums/ModelInformation.tsx:263
#: src/pages/Index/Settings/AdminCenter/Index.tsx:215
msgid "Report Templates"
-msgstr ""
+msgstr "Şablon de raport"
#: lib/enums/ModelInformation.tsx:270
#: src/components/plugins/PluginDrawer.tsx:145
msgid "Plugin Configuration"
-msgstr ""
+msgstr "Configurarea extensiei"
#: lib/enums/ModelInformation.tsx:271
msgid "Plugin Configurations"
-msgstr ""
+msgstr "Configurarea extensiei"
#: lib/enums/ModelInformation.tsx:278
msgid "Content Type"
-msgstr ""
+msgstr "Tipul conținutului"
#: lib/enums/ModelInformation.tsx:279
msgid "Content Types"
-msgstr ""
+msgstr "Tipuri de conținut"
#: lib/enums/ModelInformation.tsx:284
msgid "Selection List"
-msgstr ""
+msgstr "Listă de selecție"
#: lib/enums/ModelInformation.tsx:285
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:21
msgid "Selection Lists"
-msgstr ""
+msgstr "Listă de selecție"
#: lib/enums/ModelInformation.tsx:291
#: src/components/barcodes/BarcodeInput.tsx:114
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -571,39 +572,39 @@ msgstr ""
#: src/tables/settings/EmailTable.tsx:109
#: src/tables/stock/StockItemTestResultTable.tsx:338
msgid "Error"
-msgstr ""
+msgstr "Erroare"
#: lib/enums/ModelInformation.tsx:292
#: src/tables/machine/MachineListTable.tsx:402
#: src/tables/machine/MachineTypeTable.tsx:297
msgid "Errors"
-msgstr ""
+msgstr "Erroare"
#: lib/enums/Roles.tsx:31
msgid "Admin"
-msgstr ""
+msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
-msgstr ""
+msgstr "Comenzi de Producție"
#: lib/enums/Roles.tsx:50
#: src/pages/Index/Settings/AdminCenter/Index.tsx:202
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
-msgid "Error rendering component"
-msgstr ""
-
#: src/components/Boundary.tsx:14
+msgid "Error rendering component"
+msgstr "Eroare la redarea componentei"
+
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
-msgstr ""
+msgstr "A apărut o eroare în timpul redării acestei componente. Consultați consola pentru mai multe informații."
#: src/components/DashboardItemProxy.tsx:34
#~ msgid "Title"
@@ -611,59 +612,59 @@ msgstr ""
#: src/components/barcodes/BarcodeCameraInput.tsx:103
msgid "Error while scanning"
-msgstr ""
+msgstr "Eroare la scanare"
#: src/components/barcodes/BarcodeCameraInput.tsx:117
msgid "Error while stopping"
-msgstr ""
+msgstr "Eroare la oprirea"
#: src/components/barcodes/BarcodeCameraInput.tsx:159
msgid "Start scanning by selecting a camera and pressing the play button."
-msgstr ""
+msgstr "Pornește scanarea selectând o cameră foto și apăsând butonul de redare."
#: src/components/barcodes/BarcodeCameraInput.tsx:180
msgid "Stop scanning"
-msgstr ""
+msgstr "Oprește scanarea"
#: src/components/barcodes/BarcodeCameraInput.tsx:190
msgid "Start scanning"
-msgstr ""
+msgstr "Pornește scanarea"
#: src/components/barcodes/BarcodeInput.tsx:34
#: src/tables/general/BarcodeScanTable.tsx:55
#: src/tables/settings/BarcodeScanHistoryTable.tsx:64
msgid "Barcode"
-msgstr ""
+msgstr "Cod de bare"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
-msgstr ""
+msgstr "Scanează"
#: src/components/barcodes/BarcodeInput.tsx:53
msgid "Camera Input"
-msgstr ""
+msgstr "Intrare aparat foto"
#: src/components/barcodes/BarcodeInput.tsx:63
msgid "Scanner Input"
-msgstr ""
+msgstr "Input Scanner"
#: src/components/barcodes/BarcodeInput.tsx:105
msgid "Barcode Data"
-msgstr ""
+msgstr "Date Cod de Bare"
#: src/components/barcodes/BarcodeInput.tsx:109
msgid "No barcode data"
-msgstr ""
+msgstr "Fără date de cod de bare"
#: src/components/barcodes/BarcodeInput.tsx:110
msgid "Scan or enter barcode data"
-msgstr ""
+msgstr "Scanează sau introduce datele codului de bare"
#: src/components/barcodes/BarcodeKeyboardInput.tsx:64
msgid "Enter barcode data"
-msgstr ""
+msgstr "Introduceți datele codului de bare"
#: src/components/barcodes/BarcodeScanDialog.tsx:56
#: src/components/buttons/ScanButton.tsx:27
@@ -671,15 +672,15 @@ msgstr ""
#: src/forms/PurchaseOrderForms.tsx:509
#: src/forms/PurchaseOrderForms.tsx:615
msgid "Scan Barcode"
-msgstr ""
+msgstr "Scanați codul de bare"
#: src/components/barcodes/BarcodeScanDialog.tsx:121
msgid "No matching item found"
-msgstr ""
+msgstr "Niciun element găsit"
#: src/components/barcodes/BarcodeScanDialog.tsx:150
msgid "Barcode does not match the expected model type"
-msgstr ""
+msgstr "Codul de bare nu se potrivește cu tipul de model așteptat"
#: src/components/barcodes/BarcodeScanDialog.tsx:161
#: src/components/editors/NotesEditor.tsx:84
@@ -691,52 +692,52 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:548
#: src/tables/settings/PendingTasksTable.tsx:68
msgid "Success"
-msgstr ""
+msgstr "Succes"
#: src/components/barcodes/BarcodeScanDialog.tsx:167
msgid "Failed to handle barcode"
-msgstr ""
+msgstr "Nu s-a reușit asocierea codului de bare"
#: src/components/barcodes/BarcodeScanDialog.tsx:183
#: src/pages/Index/Scan.tsx:129
msgid "Failed to scan barcode"
-msgstr ""
+msgstr "Scanarea codului de bare a eșuat"
#: src/components/barcodes/QRCode.tsx:94
msgid "Low (7%)"
-msgstr ""
+msgstr "Scăzută (7%)"
#: src/components/barcodes/QRCode.tsx:95
msgid "Medium (15%)"
-msgstr ""
+msgstr "Medie (15%)"
#: src/components/barcodes/QRCode.tsx:96
msgid "Quartile (25%)"
-msgstr ""
+msgstr "Cvartilă (25%)"
#: src/components/barcodes/QRCode.tsx:97
msgid "High (30%)"
-msgstr ""
+msgstr "Mare (30%)"
#: src/components/barcodes/QRCode.tsx:107
msgid "Custom barcode"
-msgstr ""
+msgstr "Cod de bare personalizat"
#: src/components/barcodes/QRCode.tsx:108
msgid "A custom barcode is registered for this item. The shown code is not that custom barcode."
-msgstr ""
+msgstr "Un cod de bare personalizat este înregistrat pentru acest element. Codul afișat nu este acel cod de bare personalizat."
#: src/components/barcodes/QRCode.tsx:127
msgid "Barcode Data:"
-msgstr ""
+msgstr "Date Cod de Bare:"
#: src/components/barcodes/QRCode.tsx:138
msgid "Select Error Correction Level"
-msgstr ""
+msgstr "Selectați Nivelul de Corecție a Erorilor"
#: src/components/barcodes/QRCode.tsx:170
msgid "Failed to link barcode"
-msgstr ""
+msgstr "Nu s-a reușit asocierea codului de bare"
#: src/components/barcodes/QRCode.tsx:179
#: src/pages/part/PartDetail.tsx:521
@@ -746,21 +747,21 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:120
#: src/pages/stock/StockDetail.tsx:186
msgid "Link"
-msgstr ""
+msgstr "Asociază"
#: src/components/barcodes/QRCode.tsx:200
msgid "This will remove the link to the associated barcode"
-msgstr ""
+msgstr "Acest lucru va elimina asocierea către codul de bare asociat"
#: src/components/barcodes/QRCode.tsx:205
#: src/components/items/ActionDropdown.tsx:192
#: src/forms/PurchaseOrderForms.tsx:606
msgid "Unlink Barcode"
-msgstr ""
+msgstr "Dezasociază Codul de Bare"
#: src/components/buttons/AdminButton.tsx:86
msgid "Open in admin interface"
-msgstr ""
+msgstr "Deschide în Interfața Administrativă"
#: src/components/buttons/CopyButton.tsx:18
#~ msgid "Copy to clipboard"
@@ -768,19 +769,19 @@ msgstr ""
#: src/components/buttons/CopyButton.tsx:42
msgid "Copied"
-msgstr ""
+msgstr "Copiat"
#: src/components/buttons/CopyButton.tsx:42
msgid "Copy"
-msgstr ""
+msgstr "Copiază"
#: src/components/buttons/PrintingActions.tsx:56
msgid "Printing Labels"
-msgstr ""
+msgstr "Tipărire Etichete"
#: src/components/buttons/PrintingActions.tsx:61
msgid "Printing Reports"
-msgstr ""
+msgstr "Tipărire Rapoarte"
#: src/components/buttons/PrintingActions.tsx:77
#~ msgid "Printing"
@@ -798,14 +799,14 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
-msgstr ""
+msgstr "Tipărire Eticheta"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
-msgstr ""
+msgstr "Tipărire"
#: src/components/buttons/PrintingActions.tsx:152
#~ msgid "Generate"
@@ -819,29 +820,29 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
-msgstr ""
+msgstr "Tipărire Raport"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
-msgstr ""
+msgstr "Acțiuni de Tipărire"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
-msgstr ""
+msgstr "Tipărire Etichete"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
-msgstr ""
+msgstr "Tipărire Rapoarte"
#: src/components/buttons/RemoveRowButton.tsx:9
msgid "Remove this row"
-msgstr ""
+msgstr "Elimină acest rând"
#: src/components/buttons/SSOButton.tsx:40
msgid "You will be redirected to the provider for further actions."
-msgstr ""
+msgstr "Veți fi redirecționat către furnizor pentru acțiuni suplimentare."
#: src/components/buttons/SSOButton.tsx:44
#~ msgid "This provider is not full set up."
@@ -860,16 +861,16 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
-msgstr ""
+msgstr "Deschideți lumina"
#: src/components/buttons/StarredToggleButton.tsx:36
msgid "Subscription Updated"
-msgstr ""
+msgstr "Abonament actualizat"
#: src/components/buttons/StarredToggleButton.tsx:57
#~ msgid "Unsubscribe from part"
@@ -877,168 +878,168 @@ msgstr ""
#: src/components/buttons/StarredToggleButton.tsx:66
msgid "Unsubscribe from notifications"
-msgstr ""
+msgstr "Dezabonați-vă de la notificări"
#: src/components/buttons/StarredToggleButton.tsx:67
msgid "Subscribe to notifications"
-msgstr ""
+msgstr "Abonați-vă la notificări"
#: src/components/calendar/Calendar.tsx:102
#: src/components/calendar/Calendar.tsx:165
msgid "Calendar Filters"
-msgstr ""
+msgstr "Filtre Calendar"
#: src/components/calendar/Calendar.tsx:117
msgid "Previous month"
-msgstr ""
+msgstr "Luna trecută"
#: src/components/calendar/Calendar.tsx:126
msgid "Select month"
-msgstr ""
+msgstr "Alege luna"
#: src/components/calendar/Calendar.tsx:147
msgid "Next month"
-msgstr ""
+msgstr "Luna viitoare"
#: src/components/calendar/Calendar.tsx:178
#: src/tables/InvenTreeTableHeader.tsx:294
msgid "Download data"
-msgstr ""
+msgstr "Descarcă datele"
#: src/components/calendar/OrderCalendar.tsx:132
msgid "Order Updated"
-msgstr ""
+msgstr "Comandă actualizată"
#: src/components/calendar/OrderCalendar.tsx:142
msgid "Error updating order"
-msgstr ""
+msgstr "Eroare la actualizarea comenzii"
#: src/components/calendar/OrderCalendar.tsx:178
#: src/tables/Filter.tsx:152
msgid "Overdue"
-msgstr ""
+msgstr "Restant"
#: src/components/dashboard/DashboardLayout.tsx:282
msgid "Failed to load dashboard widgets."
-msgstr ""
+msgstr "Eroare la încărcarea widget-urilor din panoul de bord."
#: src/components/dashboard/DashboardLayout.tsx:293
msgid "No Widgets Selected"
-msgstr ""
+msgstr "Nici un Widget selectat"
#: src/components/dashboard/DashboardLayout.tsx:296
msgid "Use the menu to add widgets to the dashboard"
-msgstr ""
+msgstr "Utilizați meniul pentru a adăuga widget-uri la panoul de bord"
#: src/components/dashboard/DashboardMenu.tsx:62
#: src/components/dashboard/DashboardMenu.tsx:138
msgid "Accept Layout"
-msgstr ""
+msgstr "Acceptați Aspectul"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
-msgstr ""
+msgstr "Panou de bord"
#: src/components/dashboard/DashboardMenu.tsx:102
msgid "Edit Layout"
-msgstr ""
+msgstr "Editați Aspectul"
#: src/components/dashboard/DashboardMenu.tsx:111
msgid "Add Widget"
-msgstr ""
+msgstr "Adaugă Widget"
#: src/components/dashboard/DashboardMenu.tsx:120
msgid "Remove Widgets"
-msgstr ""
+msgstr "Șterge widget-uri"
#: src/components/dashboard/DashboardMenu.tsx:129
msgid "Clear Widgets"
-msgstr ""
+msgstr "Șterge toate Widget-urile"
#: src/components/dashboard/DashboardWidget.tsx:81
msgid "Remove this widget from the dashboard"
-msgstr ""
+msgstr "Elimină acest widget din panoul de bord"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:77
msgid "Filter dashboard widgets"
-msgstr ""
+msgstr "Filtrează widget-urile panoului de bord"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:98
msgid "Add this widget to the dashboard"
-msgstr ""
+msgstr "Adaugă acest widget în panoul de bord"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:123
msgid "No Widgets Available"
-msgstr ""
+msgstr "Nici un widget disponibil"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:124
msgid "There are no more widgets available for the dashboard"
-msgstr ""
+msgstr "Nu mai există widget-uri disponibile pentru tabloul de bord"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:24
msgid "Subscribed Parts"
-msgstr ""
+msgstr "Piese abonate"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:25
msgid "Show the number of parts which you have subscribed to"
-msgstr ""
+msgstr "Arată numărul de articole la care v-ați abonat"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:31
msgid "Subscribed Categories"
-msgstr ""
+msgstr "Categorii abonate"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:32
msgid "Show the number of part categories which you have subscribed to"
-msgstr ""
+msgstr "Arată numărul de articole la care v-ați abonat"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:41
msgid "Invalid BOMs"
-msgstr ""
+msgstr "BOM-uri invalide"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:42
msgid "Assemblies requiring bill of materials validation"
-msgstr ""
+msgstr "Ansambluri care necesită validarea Bom-ului"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:53
#: src/tables/part/PartTable.tsx:263
msgid "Low Stock"
-msgstr ""
+msgstr "Stoc scăzut"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:55
msgid "Show the number of parts which are low on stock"
-msgstr ""
+msgstr "Arată numărul de piese care sunt scăzute pe stoc"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:64
msgid "Required for Build Orders"
-msgstr ""
+msgstr "Necesar pentru Comenzi de productie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:66
msgid "Show parts which are required for active build orders"
-msgstr ""
+msgstr "Arată capitolele necesare pentru comenzile active de productie"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:71
msgid "Expired Stock Items"
-msgstr ""
+msgstr "Articole expirate în stoc"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:73
msgid "Show the number of stock items which have expired"
-msgstr ""
+msgstr "Arată numărul de articole din stoc care au expirat"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:79
msgid "Stale Stock Items"
-msgstr ""
+msgstr "Articole din stoc învechite"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:81
msgid "Show the number of stock items which are stale"
-msgstr ""
+msgstr "Arată numărul de articole din stoc care sunt vechi"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:87
msgid "Active Build Orders"
-msgstr ""
+msgstr "Comenzi de producrie active"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:89
msgid "Show the number of build orders which are currently active"
@@ -1190,15 +1191,15 @@ msgstr ""
#: src/components/dashboard/widgets/NewsWidget.tsx:116
msgid "This widget requires superuser permissions"
-msgstr ""
+msgstr "Acest widget necesită permisiuni superutilizator"
#: src/components/dashboard/widgets/NewsWidget.tsx:133
msgid "No News"
-msgstr ""
+msgstr "Nicio știre"
#: src/components/dashboard/widgets/NewsWidget.tsx:134
msgid "There are no unread news items"
-msgstr ""
+msgstr "Nu există știri necitite"
#: src/components/details/Details.tsx:117
#~ msgid "Email:"
@@ -1210,38 +1211,38 @@ msgstr ""
#: src/pages/core/UserDetail.tsx:203
#: src/tables/settings/UserTable.tsx:410
msgid "Superuser"
-msgstr ""
+msgstr "Superutilizator"
#: src/components/details/Details.tsx:124
#: src/pages/core/UserDetail.tsx:87
#: src/pages/core/UserDetail.tsx:200
#: src/tables/settings/UserTable.tsx:405
msgid "Staff"
-msgstr ""
+msgstr "Personal"
#: src/components/details/Details.tsx:125
msgid "Email: "
-msgstr ""
+msgstr "E-mail: "
#: src/components/details/Details.tsx:411
msgid "No name defined"
-msgstr ""
+msgstr "Nici un nume definit"
#: src/components/details/DetailsImage.tsx:77
msgid "Remove Image"
-msgstr ""
+msgstr "Eliminați imagini"
#: src/components/details/DetailsImage.tsx:80
msgid "Remove the associated image from this item?"
-msgstr ""
+msgstr "Eliminați imaginea asociată de la acest articol?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1249,73 +1250,73 @@ msgstr ""
#: src/tables/sales/SalesOrderAllocationTable.tsx:224
#: src/tables/sales/SalesOrderAllocationTable.tsx:247
msgid "Remove"
-msgstr ""
+msgstr "Șterge"
#: src/components/details/DetailsImage.tsx:109
msgid "Drag and drop to upload"
-msgstr ""
+msgstr "Trage și plasează pentru încărcare"
#: src/components/details/DetailsImage.tsx:112
msgid "Click to select file(s)"
-msgstr ""
+msgstr "Faceți clic pentru a selecta fișierul(ele)"
#: src/components/details/DetailsImage.tsx:172
msgid "Image uploaded"
-msgstr ""
+msgstr "Imagine încărcată"
#: src/components/details/DetailsImage.tsx:173
msgid "Image has been uploaded successfully"
-msgstr ""
+msgstr "Imaginea a fost încărcată cu succes"
#: src/components/details/DetailsImage.tsx:180
#: src/tables/general/AttachmentTable.tsx:201
msgid "Upload Error"
-msgstr ""
+msgstr "Eroare la Incarcare"
#: src/components/details/DetailsImage.tsx:250
#: src/components/forms/fields/AutoFillRightSection.tsx:34
msgid "Clear"
-msgstr ""
+msgstr "Sterge"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
-msgstr ""
+msgstr "Aplică"
#: src/components/details/DetailsImage.tsx:300
msgid "Select from existing images"
-msgstr ""
+msgstr "Selectați din imaginile existente"
#: src/components/details/DetailsImage.tsx:308
msgid "Select Image"
-msgstr ""
+msgstr "Selectati Imaginea"
#: src/components/details/DetailsImage.tsx:324
msgid "Download remote image"
-msgstr ""
+msgstr "Descarcă imaginea de la distanță"
#: src/components/details/DetailsImage.tsx:339
msgid "Upload new image"
-msgstr ""
+msgstr "Încarcă imagine nouă"
#: src/components/details/DetailsImage.tsx:346
msgid "Upload Image"
-msgstr ""
+msgstr "Încărcare imagine"
#: src/components/details/DetailsImage.tsx:359
msgid "Delete image"
-msgstr ""
+msgstr "Șterge imagine"
#: src/components/details/DetailsImage.tsx:393
msgid "Download Image"
-msgstr ""
+msgstr "Descarcă imagine"
#: src/components/details/DetailsImage.tsx:398
msgid "Image downloaded successfully"
-msgstr ""
+msgstr "Imagine descărcată cu succes"
#: src/components/details/PartIcons.tsx:43
#~ msgid "Part is a template part (variants can be made from this part)"
@@ -1347,23 +1348,23 @@ msgstr ""
#: src/components/editors/NotesEditor.tsx:75
msgid "Image upload failed"
-msgstr ""
+msgstr "Încărcarea imaginii a eșuat"
#: src/components/editors/NotesEditor.tsx:85
msgid "Image uploaded successfully"
-msgstr ""
+msgstr "Imaginea a fost încărcată cu succes"
#: src/components/editors/NotesEditor.tsx:119
msgid "Notes saved successfully"
-msgstr ""
+msgstr "Note salvate cu succes"
#: src/components/editors/NotesEditor.tsx:130
msgid "Failed to save notes"
-msgstr ""
+msgstr "Salvarea notei a eșuat"
#: src/components/editors/NotesEditor.tsx:133
msgid "Error Saving Notes"
-msgstr ""
+msgstr "Eroare la salvarea notelor"
#: src/components/editors/NotesEditor.tsx:151
#~ msgid "Disable Editing"
@@ -1371,15 +1372,15 @@ msgstr ""
#: src/components/editors/NotesEditor.tsx:153
msgid "Save Notes"
-msgstr ""
+msgstr "Salvează note"
#: src/components/editors/NotesEditor.tsx:172
msgid "Close Editor"
-msgstr ""
+msgstr "Închide Editorul"
#: src/components/editors/NotesEditor.tsx:179
msgid "Enable Editing"
-msgstr ""
+msgstr "Activează editarea"
#: src/components/editors/NotesEditor.tsx:198
#~ msgid "Preview Notes"
@@ -1391,7 +1392,7 @@ msgstr ""
#: src/components/editors/TemplateEditor/CodeEditor/index.tsx:9
msgid "Code"
-msgstr ""
+msgstr "Cod"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:44
#~ msgid "Failed to parse error response from server."
@@ -1399,23 +1400,23 @@ msgstr ""
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:50
msgid "Error rendering preview"
-msgstr ""
+msgstr "Eroare la redarea previzualizării"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:120
msgid "Preview not available, click \"Reload Preview\"."
-msgstr ""
+msgstr "Previzualizare indisponibilă, apăsați \"Reîncărcare previzualizare\"."
#: src/components/editors/TemplateEditor/PdfPreview/index.tsx:9
msgid "PDF Preview"
-msgstr ""
+msgstr "Previzualizare PDF"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:110
msgid "Error loading template"
-msgstr ""
+msgstr "Eroare la încărcarea șablonului"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:122
msgid "Error saving template"
-msgstr ""
+msgstr "Eroare la salvarea șablonului"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:151
#~ msgid "Save & Reload preview?"
@@ -1423,36 +1424,36 @@ msgstr ""
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:159
msgid "Could not load the template from the server."
-msgstr ""
+msgstr "Nu s-a putut încărca șablonul de la server."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:176
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:319
msgid "Save & Reload Preview"
-msgstr ""
+msgstr "Salvați și reîncărcați previzualizarea"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:181
msgid "Are you sure you want to Save & Reload the preview?"
-msgstr ""
+msgstr "Sunteţi sigur că doriţi să salvaţi şi să reîncărcaţi previzualizarea?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:183
msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?"
-msgstr ""
+msgstr "Pentru a reda previzualizarea, șablonul curent trebuie să fie înlocuit pe server cu modificările dvs., care pot strica eticheta dacă este în uz activ. Vrei să continui?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187
msgid "Save & Reload"
-msgstr ""
+msgstr "Salvați și reîncărcați"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:219
msgid "Preview updated"
-msgstr ""
+msgstr "Actualizare de previzualizare"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:220
msgid "The preview has been updated successfully."
-msgstr ""
+msgstr "Previzualizarea a fost actualizată cu succes."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:236
msgid "An unknown error occurred while rendering the preview."
-msgstr ""
+msgstr "O eroare necunoscută a apărut în timpul redării previzualizării."
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263
#~ msgid "Save & Reload preview"
@@ -1460,15 +1461,15 @@ msgstr ""
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:311
msgid "Reload preview"
-msgstr ""
+msgstr "Reîncărcare previzualizare"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:312
msgid "Use the currently stored template from the server"
-msgstr ""
+msgstr "Utilizați șablonul stocat în prezent de pe server"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:320
msgid "Save the current template and reload the preview"
-msgstr ""
+msgstr "Salvați șablonul curent și reîncărcați previzualizarea"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:322
#~ msgid "to preview"
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr "Introdu numele de utilizator"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1768,12 +1769,12 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:58
msgid "Select Server"
-msgstr ""
+msgstr "Selectați Server"
#: src/components/forms/InstanceOptions.tsx:68
#: src/components/forms/InstanceOptions.tsx:92
msgid "Edit host options"
-msgstr ""
+msgstr "Editează opțiunile host"
#: src/components/forms/InstanceOptions.tsx:71
#~ msgid "Edit possible host options"
@@ -1781,7 +1782,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:76
msgid "Save host selection"
-msgstr ""
+msgstr "Salvează selecția host"
#: src/components/forms/InstanceOptions.tsx:98
#~ msgid "Version: {0}"
@@ -1802,26 +1803,27 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:118
#: src/pages/Index/Settings/SystemSettings.tsx:46
msgid "Server"
-msgstr ""
+msgstr "Server"
#: src/components/forms/InstanceOptions.tsx:130
#: src/components/plugins/PluginDrawer.tsx:88
#: src/tables/plugin/PluginListTable.tsx:127
msgid "Version"
-msgstr ""
+msgstr "Verisune"
#: src/components/forms/InstanceOptions.tsx:136
#: src/components/modals/AboutInvenTreeModal.tsx:124
#: src/components/modals/ServerInfoModal.tsx:34
msgid "API Version"
-msgstr ""
+msgstr "Versiune API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
-msgstr ""
+msgstr "Plugin-uri"
#: src/components/forms/InstanceOptions.tsx:143
#: src/tables/general/ParameterTemplateTable.tsx:153
@@ -1831,40 +1833,40 @@ msgstr ""
#: src/tables/settings/TemplateTable.tsx:362
#: src/tables/stock/StockItemTestResultTable.tsx:419
msgid "Enabled"
-msgstr ""
+msgstr "Activat"
#: src/components/forms/InstanceOptions.tsx:143
msgid "Disabled"
-msgstr ""
+msgstr "Dezactivat"
#: src/components/forms/InstanceOptions.tsx:149
msgid "Worker"
-msgstr ""
+msgstr "Worker"
#: src/components/forms/InstanceOptions.tsx:150
#: src/tables/settings/FailedTasksTable.tsx:48
msgid "Stopped"
-msgstr ""
+msgstr "Oprit"
#: src/components/forms/InstanceOptions.tsx:150
msgid "Running"
-msgstr ""
+msgstr "Rulează"
#: src/components/forms/fields/ApiFormField.tsx:197
msgid "Select file to upload"
-msgstr ""
+msgstr "Selectați fișierul de încărcat"
#: src/components/forms/fields/AutoFillRightSection.tsx:47
msgid "Accept suggested value"
-msgstr ""
+msgstr "Acceptați valoarea sugerată"
#: src/components/forms/fields/DateField.tsx:76
msgid "Select date"
-msgstr ""
+msgstr "Selectaţi data"
#: src/components/forms/fields/IconField.tsx:83
msgid "No icon selected"
-msgstr ""
+msgstr "Nicio pictogramă selectată"
#: src/components/forms/fields/IconField.tsx:161
msgid "Uncategorized"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/ru/messages.po b/src/frontend/src/locales/ru/messages.po
index d4f75fbf5b..2bab36ccd7 100644
--- a/src/frontend/src/locales/ru/messages.po
+++ b/src/frontend/src/locales/ru/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: ru\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Russian\n"
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"
@@ -46,9 +46,9 @@ msgstr "Удалить"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Отменить"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Действия"
@@ -73,7 +73,7 @@ msgstr "Действия"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Поиск"
@@ -97,12 +97,12 @@ msgstr "Нет"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Нет"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Деталь"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Детали"
@@ -149,14 +150,14 @@ msgstr "Детали"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Параметр"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Параметры"
@@ -168,7 +169,7 @@ msgstr "Шаблон параметра"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Шаблоны параметров"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "Категория детали"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Категории деталей"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Складская позиция"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Складские позиции"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Место хранения"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Места хранения"
@@ -267,7 +268,7 @@ msgstr "Типы места хранения"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "История склада"
@@ -340,11 +341,11 @@ msgstr "Заказ на закупку"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Заказы на закупку"
@@ -373,10 +374,10 @@ msgstr "Заказ на продажу"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Заказы на продажу"
@@ -398,10 +399,10 @@ msgstr "Заказ на возврат"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Заказы на возврат"
@@ -546,23 +547,23 @@ msgstr "Списки выбора"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Администрирование пользователей"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Заказы на сборку"
@@ -597,11 +598,11 @@ msgstr "Заказы на сборку"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Ошибка при отображении компонента"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Произошла ошибка при отрисовки этого компонента. Обратитесь к консоли для получения дополнительной информации."
@@ -637,7 +638,7 @@ msgstr "Штрихкод"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Сканировать"
@@ -798,12 +799,12 @@ msgstr "Печать отчётов"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Печать этикеток"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Печать"
@@ -819,19 +820,19 @@ msgstr "Печать"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Печать отчета"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Действия печати"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Печать этикеток"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Печать отчётов"
@@ -860,8 +861,8 @@ msgstr "Вы будете перенаправлены на сайт поста
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Открыть сканер штрих-кодов"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Сохранить макет"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Удалить связанное изображение?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Очистить"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Подтвердить"
@@ -1579,21 +1580,21 @@ msgstr "Вы успешно вошли в систему"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Ошибка входа"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Проверьте введенные данные и повторите попытку."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Отправка почты прошла успешно"
@@ -1628,7 +1629,7 @@ msgstr "Логин"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Пароль"
@@ -1732,7 +1733,7 @@ msgstr "Узел"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Версия API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} значков"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Загрузка"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Обработка данных"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Произошла ошибка"
@@ -2002,31 +2004,31 @@ msgstr "Выберите столбец, или оставьте пустым,
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Игнорировать это поле"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Сопоставление столбцов данных с полями базы данных"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Принять сопоставление колонок"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Поле базы данных"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Описание поля"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Импортированный столбец"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Значение по умолчанию"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Сопоставить столбцы"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Импорт данных"
+msgid "Import Rows"
+msgstr "Импортированные строки"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Данные успешно импортированы"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Закрыть"
@@ -2208,7 +2214,7 @@ msgstr "Обновление ролей группы"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Роль"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Просмотр"
@@ -2255,10 +2261,10 @@ msgstr "Нет элементов"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Ссылки"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Документация"
@@ -2479,7 +2485,7 @@ msgstr "Предупреждения"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "Проблем не обнаружено"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
@@ -2547,7 +2553,7 @@ msgstr "Настройки"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Пользовательские настройки"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Системные настройки"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Админ центр"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Выход"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "Удалить группу из поиска"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Информация о плагине"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Отгрузка"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Неактивный"
@@ -3001,7 +3007,7 @@ msgstr "Нет склада"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "В заказе"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Категория"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Категория"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Расположение"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Серийный номер"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Серийный номер"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Количество"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Партия"
@@ -3193,11 +3198,19 @@ msgstr "Добавить пользовательский статус"
msgid "Create a new custom state for your workflow"
msgstr "Создайте новый пользовательский статус для вашего рабочего процесса"
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Редактирование настроек"
@@ -3206,32 +3219,32 @@ msgstr "Редактирование настроек"
msgid "Setting {key} updated successfully"
msgstr "Значение {key} успешно обновлено"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Настройки обновлены"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Настройки {0} успешно обновлены"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Ошибка при редактировании настроек"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Ошибка загрузки настроек"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Настройки отсутствуют"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "Нет доступных настраиваемых параметров"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Настройки не указаны"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr "Далее"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Редактировать деталь"
@@ -3770,13 +3783,13 @@ msgstr "Требования продаж"
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Закупить детали"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Перейти к панели InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Посетите документацию, чтобы узнать больше о InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "О программе InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Информация о сервере"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "Об этом сервере InvenTree"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Информация о лицензии"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Лицензии на зависимостей сервиса"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Открыть панель навигации"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Открыть главное меню навигации"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Сканировать штрихкод или QR-код"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr "Перейти к настройкам пользователя"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr "Перейти к заказам на закупку"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr "Перейти к заказам на продажу"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr "Перейти к заказам на возврат"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr "Перейти к заказам на сборку"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr "Перейти к системным настройкам"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Перейти в админ центр"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "Управление плагинами InvenTree"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "Замена создана"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Продукция"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr "Количество для завершения"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr "Количество для завершения"
msgid "Status"
msgstr "Статус"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Завершить производство"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Производство завершено"
@@ -4428,24 +4445,24 @@ msgstr "Производство завершено"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr "Количество для списания"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Списать Продукцию"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "Выбранная продукция будет завершена, но помечена списанной"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "Зарезервированные складские позиции будут израсходованы"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Продукция списана"
@@ -4453,24 +4470,24 @@ msgstr "Продукция списана"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Отменить продукцию"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "Выбранная продукция будет удалена"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "Зарезервированные складские позиции будут возвращены на склад"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Производство отменено"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Производство отменено"
msgid "IPN"
msgstr "Внутренний артикул"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Зарезервировано"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Место хранения комплектующих"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Выберите исходное расположение для распределения запасов"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Выберите исходное расположение для рас
msgid "Allocate Stock"
msgstr "Зарезервировать остатки"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Запасы назначены"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Запасы назначены"
msgid "Consume Stock"
msgstr "Израсходовать запасы"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr "Складские позиции, запланированные к расходованию"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "Полностью израсходовано"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr "Выберите код проекта для этой позиции"
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr "Выберите код проекта для этой позиции"
msgid "Subscribed"
msgstr "Получать уведомления"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Подписаться на уведомления для этой детали"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Родительская категория"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Подписаться на уведомления для этой категории"
@@ -4690,8 +4707,8 @@ msgstr "Использовать место хранения уже получе
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Возврат"
msgid "Count"
msgstr "Количество"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Увеличить склад"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Запас добавлен"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "Увеличить количество выбранных складских позиций на указанную величину."
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Уменьшить склад"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Запас удален"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "Уменьшить количество выбранных складских позиций на указанную величину."
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Переместить склад"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Запас перемещен"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "Переместить выбранные позиции в указанное место хранения."
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "Возврат запасов"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "Запасы возвращены"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "Вернуть выбранные позиции на склад, в указанное место хранения."
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Подсчёт склада"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Запас посчитан"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "Произвести инвентаризацию выбранных складских позиций и скорректировать количество соответствующим образом."
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Изменить статус запасов"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Состояние запаса изменено"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "Изменить статус выбранных складских позиций."
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Объединить склад"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Запасы объединены"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "Объединить складские позиции"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "Операция объединения не может быть отменена"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "При объединении позиций информация об отслеживании может быть потеряна"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "При объединении может быть потеряна информация о поставщиках"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Передать запас клиенту"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Запас передан клиенту"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Удалить складскую позицию"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Запас удален"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "Эта операция необратимо удалит выбранные складские позиции."
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Расположение основного склада"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Поиск по серийному номеру"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Нет подходящих элементов"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "Несколько подходящих элементов"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "Неверный ответ сервера"
@@ -5062,99 +5079,110 @@ msgstr "Внутренняя ошибка сервера"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Вход уже выполнен"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "На сервере есть конфликтующие сессии для данного браузера. Пожалуйста, выйдите из системы."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Выход"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "Нет ответа от сервера."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Нет ответа от сервера."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "Успешный вход с помощью МФА"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "Данные МФА автоматически переданы в браузер"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Выход"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Успешный выход из системы"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "Язык изменён"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "Язык изменён на заданный в вашем профиле"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Тема изменена"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "Тема интерфейса изменена на заданную в профиле"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Проверьте свой почтовый ящик, чтобы получить ссылку на сброс. Это работает только в том случае, если у вас есть учетная запись. Проверьте также спам."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Сброс не удался"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Вход уже выполнен"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "На сервере есть конфликтующие сессии для данного браузера. Пожалуйста, выйдите из системы."
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Войти в систему"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Вход выполнен успешно"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "Не удалось настроить МФА"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Пароль установлен"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Пароль был установлен успешно. Теперь вы можете войти в систему с новым паролем"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Пароль не может быть изменён"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "Пароли не совпадают"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Пароль изменен"
@@ -5210,11 +5238,11 @@ msgstr "Превышено время выполнения запроса"
msgid "Exporting Data"
msgstr "Экспортирование данных"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Экспорт данных"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Экспорт"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "Удалить выбранные складские позиции"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Действия со складом"
@@ -5383,12 +5411,12 @@ msgstr "Нет аккаунта?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "Многофакторная аутентификация"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "Код TOTP"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "Должность"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Тип"
@@ -5933,220 +5961,220 @@ msgstr "Редактировать профиль"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr "Повторная аутентификация прошла успешно"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr "Вы успешно повторно прошли аутентификацию."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr "Ошибка при повторной аутентификации"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr "Повторная аутентификация не удалась"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr "Не удалось повторно пройти аутентификацию"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr "Пройти повторную аутентификацию"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr "Для продолжения необходима повторная аутентификация."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "Введите пароль"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr "Введите один из ваших кодов TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr "Учётные данные WebAuthn удалены"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr "Учётные данные WebAuthn успешно удалены."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr "Ошибка при удалении учётных данных WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr "Удалить учётные данные WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr "Подтвердить удаление"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr "Подтвердите удаление учётных данных WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr "Код TOTP удалён"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr "Токен TOTP успешно удалён."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr "Ошибка при удалении токена TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr "Удалить токен TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr "Подтвердите удаление кода TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr "TOTP уже зарегистрирован"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr "Для этой учётной записи уже зарегистрирован токен TOTP."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr "Ошибка при получении регистрации TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr "Произошла непредвиденная ошибка при получении данных регистрации TOTP."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr "TOTP зарегистрирован"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr "Токен TOTP успешно зарегистрирован."
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "Ошибка регистрации токена TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "Зарегестрировать токен TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr "Ошибка при получении резервных кодов"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Коды восстановления"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr "Доступны следующие одноразовые резервные коды"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr "Скопировать резервные коды в буфер обмена"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr "Нет неиспользованных кодов"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr "Доступных резервных кодов нет"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr "WebAuthn зарегистрирован"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr "Учётные данные WebAuthn успешно зарегистрированы"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr "Ошибка при регистрации учётных данных WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr "Регистрация WebAuthn не удалась"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr "Не удалось зарегистрировать учётные данные WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr "Ошибка при получении регистрации WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "Алгоритм одноразового пароля на основе времени"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "Коды восстановления доступа используя TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr "WebAuthn"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr "Web-аутентификация (WebAuthn) — это веб-стандарт для безопасной аутентификации"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Последнее использование"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Создан"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Не настроен"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "Токены многофакторной аутентификации для данного аккаунта не настроены"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr "Зарегистрировать метод аутентификации"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr "Нет доступных методов MFA"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr "Нет доступных методов MFA для настройки"
@@ -6162,47 +6190,47 @@ msgstr "Одноразовый пароль"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "Введите код TOTP, чтобы убедиться, что он зарегистрирован правильно"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "Адреса электронной почты"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "Адреса электронной почты"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "Технология единого входа (SSO)"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Не включен"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "Технология единого входа (SSO) не включена на данном сервере"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Не включен"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "Технология единого входа (SSO) не включена на данном сервере"
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "Токены доступа"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "Информация о сессии"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "Информация о сессии"
msgid "Timestamp"
msgstr "Метка времени"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Метод"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "Ошибка обновления электронной почты"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "В настоящее время не зарегистрирован ни один адрес электронной почты."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "С вашей учетной записью связаны следующие адреса электронной почты:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Основной"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Проверено"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Непроверенный"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Сделать основным"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Отправить подтверждение повторно"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Добавить адрес электронной почты"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "Электронная почта"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Адрес электронной почты"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "Ошибка добавления электронной почты"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Добавить адрес электронной почты"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "Электронная почта"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Адрес электронной почты"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "Ошибка добавления электронной почты"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Добавить Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "Ошибка добавления электронной почты"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Добавить Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "Нет провайдеров, подключенных к этой учетной записи."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "Вы можете войти в свою учётную запись, используя любой из следующих провайдеров"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "Удалить ссылку провайдера"
@@ -6462,7 +6490,7 @@ msgstr "Сообщения электронной почты"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:36
msgid "System Status"
-msgstr ""
+msgstr "Состояние системы"
#: src/pages/Index/Settings/AdminCenter/HomePanel.tsx:47
msgid "Admin Center Information"
@@ -6921,7 +6949,7 @@ msgstr "Пользовательский статус"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Дочерние заказы на сборку"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "Показать сторонние заказы на сборку"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "В виде таблицы"
@@ -7245,8 +7274,9 @@ msgstr "В виде календаря"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
-msgstr ""
+msgstr "Параметрическое представление"
#: src/pages/company/CompanyDetail.tsx:100
msgid "Website"
@@ -7349,7 +7379,7 @@ msgstr "Внешняя ссылка"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Сведения о детали"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Создать деталь поставщика"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Нет на складе"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "Базовый пользователь"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Подкатегории"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Перенести элементы в родительскую категорию"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Удалить товар"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Можно продавать"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Создал"
msgid "Default Supplier"
msgstr "Поставщик по умолчанию"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Срок годности по умолчанию"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "дней"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Ценовой диапазон"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Последний серийный номер"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Выберите ревизию детали"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Разновидности"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Резервирование"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Спецификация"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Используется в"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Цены на деталь"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Шаблоны тестов"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Связанные детали"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Деталь заблокирована"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Параметры детали нельзя редактировать, поскольку деталь заблокирована"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Параметры детали нельзя редактировать, поскольку деталь заблокирована"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Требуется"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
-msgstr ""
+msgstr "Дефицит"
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Создать деталь"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Удалить деталь"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Удаление этой детали нельзя отменить"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Закупить"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Закупить на склад"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Поиск по серийному номеру"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Действия с деталью"
@@ -8008,8 +8038,8 @@ msgstr "Максимальное значение"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Максимальное значение"
msgid "Total Price"
msgstr "Общая стоимость"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Компонент"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Минимальная цена"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Максимальная цена"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Максимальная цена"
msgid "Unit Price"
msgstr "Цена за единицу"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Круговая диаграмма"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Гистограмма"
@@ -8543,94 +8573,94 @@ msgstr "Снять отметку"
msgid "Mark shipment as unchecked"
msgstr "Отметить отправку как непроверенную"
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Родительское местоположение"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Дочерние местоположения"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Тип места хранения"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Место хранения верхнего уровня"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Сведения о месте"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Детали по умолчанию"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Редактировать место хранения"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Переместить элементы в родительское местоположение"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Удалить место хранения"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Действия с элементами"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Действия для складских элементов в этом месте"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Редактировать место хранения"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Переместить элементы в родительское местоположение"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Удалить место хранения"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Действия с элементами"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Действия для складских элементов в этом месте"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr "Действия с местоположениями"
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Действия для дочерних местоположений в этом месте"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "Сканировать складской элемент"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "Сканированный элемент помещён в местоположение"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "Ошибка при сканировании складского элемента"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "Сканировать место хранения"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "Сканированное место хранения помещено в местоположение"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "Ошибка при сканировании места хранения"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Действия с местом хранения"
@@ -8917,6 +8947,7 @@ msgstr "Показать элементы, которым присвоен се
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "Серийный номер"
@@ -9139,12 +9170,12 @@ msgstr "Добавить фильтр"
msgid "Clear Filters"
msgstr "Очистить фильтр"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Записи не найдены"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "Ошибка загрузки параметров таблицы"
@@ -9156,7 +9187,7 @@ msgstr "Ошибка загрузки параметров таблицы"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Сервер вернул неверный тип данных"
@@ -9176,7 +9207,7 @@ msgstr "Сервер вернул неверный тип данных"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "Ошибка загрузки данных таблицы"
@@ -9190,11 +9221,11 @@ msgstr "Ошибка загрузки данных таблицы"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Показать сведения"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr "Просмотреть {model}"
@@ -9788,7 +9819,7 @@ msgstr "Показать заказы с указанной начальной
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Резервирование складских позиций для продукции"
@@ -10049,7 +10080,7 @@ msgstr "Показать элемент"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Создать позицию"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Редактировать позицию"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10086,7 +10117,7 @@ msgstr "Кем обновлено"
#: src/tables/general/ParameterTable.tsx:118
msgid "Show parameters for enabled templates"
-msgstr ""
+msgstr "Показывать параметры для включённых шаблонов"
#: src/tables/general/ParameterTable.tsx:124
msgid "Filter by user who last updated the parameter"
@@ -10094,7 +10125,7 @@ msgstr "Фильтр по пользователю, который послед
#: src/tables/general/ParameterTable.tsx:154
msgid "Import Parameters"
-msgstr ""
+msgstr "Импортировать параметры"
#: src/tables/general/ParameterTable.tsx:164
#: src/tables/general/ParametricDataTable.tsx:261
@@ -10115,19 +10146,19 @@ msgstr "Удалить параметр"
#: src/tables/general/ParameterTable.tsx:191
msgid "Add Parameters"
-msgstr ""
+msgstr "Добавить параметры"
#: src/tables/general/ParameterTable.tsx:197
msgid "Create Parameter"
-msgstr ""
+msgstr "Создать параметр"
#: src/tables/general/ParameterTable.tsx:199
msgid "Create a new parameter"
-msgstr ""
+msgstr "Создайте новый параметр"
#: src/tables/general/ParameterTable.tsx:208
msgid "Import parameters from a file"
-msgstr ""
+msgstr "Импортировать параметры из файла"
#: src/tables/general/ParameterTemplateTable.tsx:48
#: src/tables/general/ParameterTemplateTable.tsx:197
@@ -10173,7 +10204,7 @@ msgstr "Показать шаблоны с единицами измерения
#: src/tables/general/ParameterTemplateTable.tsx:154
msgid "Show enabled templates"
-msgstr ""
+msgstr "Показывать включённые шаблоны"
#: src/tables/general/ParameterTemplateTable.tsx:158
#: src/tables/settings/ImportSessionTable.tsx:111
@@ -10183,7 +10214,7 @@ msgstr "Тип модели"
#: src/tables/general/ParameterTemplateTable.tsx:159
msgid "Filter by model type"
-msgstr ""
+msgstr "Фильтровать по типу модели"
#: src/tables/general/ParametricDataTable.tsx:79
msgid "Click to edit"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Требуемый запас"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Показать заказ на сборку"
@@ -11196,7 +11227,7 @@ msgstr "Показать части производителя для актив
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Импортировать позиции"
@@ -11222,11 +11253,11 @@ msgstr "Показать полученные позиции"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Получить позицию"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Получить позиции"
diff --git a/src/frontend/src/locales/sk/messages.po b/src/frontend/src/locales/sk/messages.po
index 30ad5c805c..3c6dac1a80 100644
--- a/src/frontend/src/locales/sk/messages.po
+++ b/src/frontend/src/locales/sk/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: sk\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Slovak\n"
"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/sl/messages.po b/src/frontend/src/locales/sl/messages.po
index 2f6d4f9a98..f9fa9bacf8 100644
--- a/src/frontend/src/locales/sl/messages.po
+++ b/src/frontend/src/locales/sl/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: sl\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Slovenian\n"
"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Printaj nalepko"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Printaj"
@@ -819,19 +820,19 @@ msgstr "Printaj"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Tiskaj poročilo"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Dejanja tiskanja"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Tiskanje nalepk"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Tiskanje poročil"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/sr/messages.po b/src/frontend/src/locales/sr/messages.po
index 0ddf451aee..90261ea821 100644
--- a/src/frontend/src/locales/sr/messages.po
+++ b/src/frontend/src/locales/sr/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: sr\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Serbian (Latin)\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
@@ -46,9 +46,9 @@ msgstr "Obriši"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Poništi"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Akcije"
@@ -73,7 +73,7 @@ msgstr "Akcije"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Pretraga"
@@ -97,12 +97,12 @@ msgstr "Ne"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Ne"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Deo"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Delovi"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parametri"
@@ -218,14 +219,14 @@ msgstr "Kategorija delova"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Kategorije delova"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Stavka zalihe"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Stavke zaliha"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Lokacija zaliha"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Lokacije zaliha"
@@ -267,7 +268,7 @@ msgstr "Tipovi lokacija zaliha"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Istorija zaliha"
@@ -340,11 +341,11 @@ msgstr "Narudžbenica"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Narudžbenice"
@@ -373,10 +374,10 @@ msgstr "Nalog za prodaju"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Naloti za prodaju"
@@ -398,10 +399,10 @@ msgstr "Nalog za povrat"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Nalozi za povrat"
@@ -546,23 +547,23 @@ msgstr "Liste selekcija"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Nalozi za izradu"
@@ -597,11 +598,11 @@ msgstr "Nalozi za izradu"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Greška u renderovanju komponente"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Desila se greška prilikom renderovanja ovde komponente. Pogledajte konzolu za više informacija"
@@ -637,7 +638,7 @@ msgstr "Barkod"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Skeniraj"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Štampaj naziv"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Štampaj"
@@ -819,19 +820,19 @@ msgstr "Štampaj"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Greška u štampanju"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Opcije štampanja"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Štampaj nazive"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Štampaj izveštaje"
@@ -860,8 +861,8 @@ msgstr "Bićete preusmereni provajderu za dodatne akcije"
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Otvori barkod skener"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Prihvati izgled plana"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Ukloniti sliku sa ovog predmeta?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Obriši"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Podnesi"
@@ -1579,21 +1580,21 @@ msgstr "Uspešno prijavljivanje"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Neuspešna prijava"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Proverite svoj unos i pokušajte ponovno."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Isporuka pošte uspešna"
@@ -1628,7 +1629,7 @@ msgstr "Vaše korisničko ime"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Lozinka"
@@ -1732,7 +1733,7 @@ msgstr "Host"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API Verzija"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} ikone"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Učitavanje"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Obrađivanje podataka"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Desila se greška"
@@ -2002,31 +2004,31 @@ msgstr "Izaberi kolonu, ili ostavi prazno da se polje ne koristi"
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignoriši ovo polje"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mapiranje kolona podataka u polja baze podataka"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Prihvati mapiranje kolona"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Polje baze podataka"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Opis polja"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Uvežena kolona"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Podrazmevana vrednost"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mapiraj kolone"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Učitaj podatke"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Podaci su učitani uspešno"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Zatvori"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Linkovi"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentacija"
@@ -2547,7 +2553,7 @@ msgstr "Podešavanje"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Korisnička podešavanja"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Sistemska podešavanja"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Administratorski centar"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Odjavljivanje"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "Informacije o ekstenziji"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Pošiljka"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Neaktivno"
@@ -3001,7 +3007,7 @@ msgstr "Nema zalihe"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "Na nalogu"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategorija"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategorija"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Lokacija"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Serijski broj"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Serijski broj"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Količina"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Serija"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Izmeni podešavanja"
@@ -3206,32 +3219,32 @@ msgstr "Izmeni podešavanja"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Podešavanje ažurirano"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Podešavanje {0} uspešno ažurirano"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Greška prilikom izmene podešavanja"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Podešavanje nije izabrano"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Izmeni deo"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr "Naruči delove"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Idi na InvenTree kontrolnu tablu"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Posetite stranicu sa dokumentacijom da saznate više o InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "O InvenTree organizaciji"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Informacije o serveru"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "O ovoj InvenTree instanci"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Informacije o licenci"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licence za servise"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Otvori stranicu za navigaciju"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Otvori glavni navigacioni meni"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "Skeniraj bar kod ili QR kod"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Idi na administratorski centar"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "Izlazna kompilacija"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Kompletiraj izlaznu kompilaciju"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Izlazne kompilacije kompletirane"
@@ -4428,24 +4445,24 @@ msgstr "Izlazne kompilacije kompletirane"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Izbrišii izlaznu kompilaciju"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Izlazna kompilacija izbriši"
@@ -4453,24 +4470,24 @@ msgstr "Izlazna kompilacija izbriši"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Poništi izlazne kompilacije"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Izlazne kompilacije poništene"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Izlazne kompilacije poništene"
msgid "IPN"
msgstr "Identifikacioni broj dela"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Alocirano"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Lokacija izvora"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Izaberi lokaciju izvora radi alokacije zaliha"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Izaberi lokaciju izvora radi alokacije zaliha"
msgid "Allocate Stock"
msgstr "Alociraj zalihe"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Stavke zaliha alocirane"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Stavke zaliha alocirane"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Pretplaćeni"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "Pretplati se za obaveštenja o ovom delu"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Kategorija sa delovima veće kategorije"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "Pretplati se za obaveštenja za ovu kategoriju"
@@ -4690,8 +4707,8 @@ msgstr "Prodavnica sa već primeljenom zalihom"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "Vrati"
msgid "Count"
msgstr "Računaj"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Dodaj zalihu"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Zaliha dodata"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Ukloni zalihu"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Zaliha uklonjena"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Prebaci zalihu"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Zaliha prebačena"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Prebroj zalihe"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Zaliha prebrojena"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Promeni status zalihe"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Status zalihe izmenjen"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Spoji zalihe"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Zalihe spojene"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Dodeli zalihu mušteriji"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Zaliha dodeljena mušteriji"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Izbriši stavku zalihe"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Zaliha izbrisana"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Lokacija roditeljske zalihe"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr "Interna serverska greška"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Odjavljen"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Odjavljen"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Uspešno ste odjavljeni"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Proverite u primljenoj pošti da li imate link za resetovanje. Proverite i u spamu"
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Resetovanje neuspešno"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Ulogovani ste"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Uspešno ste se ulogovali"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Lozinka podešena"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Lozinka je uspešno podešena. Sada se možete prijaviti sa novom lozinkom"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "Lozinku nije bilo moguće promeniti"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Lozinka promenjena"
@@ -5210,11 +5238,11 @@ msgstr "Isteklo je vreme zahteva"
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Akcije zaliha"
@@ -5383,12 +5411,12 @@ msgstr "Da li imate otvoren korisnički nalog?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Nije omogućeno"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Nije omogućeno"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "Vremenska oznaka"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Sledeća adresa elektronske pošte povezana sa vašim nalogom"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primarni"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Verifikovan"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Nije verifikovan"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Učini ga primarnim"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Ponovo pošalji verifikaciju"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "dodaj adresu elektronske pošte"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E pošta"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Adresa elektronske pošte"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "dodaj adresu elektronske pošte"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E pošta"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Adresa elektronske pošte"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Dodaj adresu elektronske pošte"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Dodaj adresu elektronske pošte"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr "Prilagođeni status"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Pod-nalozi za izradu"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Spoljni link"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Detalji dela"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Dodaj deo dobavljača"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Nema zaliha"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Podkategorije"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "Premesti stavke u nadređenu kategoriju"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Obriši stavke"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Deo može da se proda"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Kreirano od strane"
msgid "Default Supplier"
msgstr "Podrazumevani dobavljač"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Raspon cena"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Najnoviji serijski broj"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Izaberite reviziju dela"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varijante"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Alokacije"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Spisak materijala"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Korišćeno u"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Cena dela"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Test šabloni"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Povezani delovi"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Deo je zaključan"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Parametri dela ne mogu da se izmene, deo je zaključan"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Parametri dela ne mogu da se izmene, deo je zaključan"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Neophodno"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Dodaj deo"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Obriši deo"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Brisanje ovog dela se ne može poništiti"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Nalog"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Naruči zalihe"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Akcije dela"
@@ -8008,8 +8038,8 @@ msgstr "Maksimalna vrednost"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maksimalna vrednost"
msgid "Total Price"
msgstr "Ukupna cena"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Komponenta"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimalna cena"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Maksimalna cena"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Maksimalna cena"
msgid "Unit Price"
msgstr "Cena po jedinici"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Pie dijagram"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Bar grafikon"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Nadređena lokacija"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Podlokacije"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Tip lokacije"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Lokacija zaliha najvišeg nivoa"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Detalji lokacije"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Podrazumevani delovi"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Izmeni lokaciju zaliha"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "Pomeri stavku na roditeljsku lokaciju"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Obriši lokaciju zaliha"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Akcija stavki"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Akcija za stavke na ovoj lokaciji"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Izmeni lokaciju zaliha"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "Pomeri stavku na roditeljsku lokaciju"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Obriši lokaciju zaliha"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Akcija stavki"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Akcija za stavke na ovoj lokaciji"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Akcija za lokacije podređene ovoj"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Akcije lokacija"
@@ -8917,6 +8947,7 @@ msgstr "Prikaži stavke koje imaju serijski broj"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Dodaj filter"
msgid "Clear Filters"
msgstr "Očisti filtere"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Nema pronađenih zapisa"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Server je vratio neispravan tip podataka"
@@ -9176,7 +9207,7 @@ msgstr "Server je vratio neispravan tip podataka"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "Alokacija zaliha na nalog za izradu"
@@ -10049,7 +10080,7 @@ msgstr "Pogledaj stavku"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Dodaj stavku"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Izmeni stavku"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "Potrebne zalihe"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "Prikaži nalog za izradu"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "Uvezi stavke"
@@ -11222,11 +11253,11 @@ msgstr "Prikaži stavke koje su primljene"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Primi stavku"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Primi stavke"
diff --git a/src/frontend/src/locales/sv/messages.po b/src/frontend/src/locales/sv/messages.po
index 80fc2a7d63..5cde01a6c8 100644
--- a/src/frontend/src/locales/sv/messages.po
+++ b/src/frontend/src/locales/sv/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: sv\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Swedish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Radera"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Avbryt"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Åtgärder"
@@ -73,7 +73,7 @@ msgstr "Åtgärder"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Sök"
@@ -97,12 +97,12 @@ msgstr "Nej"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Nej"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Artkel"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Artiklar"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parametrar"
@@ -218,14 +219,14 @@ msgstr "Artikel Kategori"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Artikelkategorier"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Lager artikel"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Artikel i lager"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Lagerplats"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Lagerplats"
@@ -267,7 +268,7 @@ msgstr "Lagerplatstyper"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Lagerhistorik"
@@ -340,11 +341,11 @@ msgstr "Inköpsorder"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Inköpsorder"
@@ -373,10 +374,10 @@ msgstr "Försäljningsorder"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Försäljningsorder"
@@ -398,10 +399,10 @@ msgstr "Returorder"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Returorder"
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Admin"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Byggordrar"
@@ -597,11 +598,11 @@ msgstr "Byggordrar"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Fel vid rendering av komponent"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Ett fel inträffade vid rendering av denna komponent. Se konsolen för mer information."
@@ -637,7 +638,7 @@ msgstr "Streckkod"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Skriv ut etikett"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Skriv ut"
@@ -819,19 +820,19 @@ msgstr "Skriv ut"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Skriv ut Rapport"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Utskriftsalternativ"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Skriv ut etiketter"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Skriv ut rapporter"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Vill du ta bort den associerade bilden från denna artikel?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Rensa"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Skicka"
@@ -1579,21 +1580,21 @@ msgstr "Inloggningen lyckades"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Inloggningen misslyckades"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Kontrollera din inmatning och försök igen."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "E-postleverans lyckad"
@@ -1628,7 +1629,7 @@ msgstr "Ditt användarnamn"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Lösenord"
@@ -1732,7 +1733,7 @@ msgstr "Värd"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API Version"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} ikoner"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Laddar"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Bearbetar data"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Ett fel inträffade"
@@ -2002,31 +2004,31 @@ msgstr "Välj kolumn eller lämna tomt för att ignorera detta fält."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Ignorera det här fältet"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Mappning av datakolumner till databasfält"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Godkänn kolumnmappning"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Databasfält"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Fältbeskrivning"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Importerad kolumn"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Standardvärde"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Mappa Kolumner"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Importera data"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Data har importerats framgångsrikt"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Stäng"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Roll"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Visa"
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Länkar"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokumentation"
@@ -2547,7 +2553,7 @@ msgstr "Inställningar"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Användarinställningar"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Systeminställningar"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Admin-center"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Logga ut"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Frakt"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Inaktiv"
@@ -3001,7 +3007,7 @@ msgstr "Inget på lager"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "På order"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategori"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategori"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Plats"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Serienummer"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Serienummer"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Antal"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Redigera inställning"
@@ -3206,32 +3219,32 @@ msgstr "Redigera inställning"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Inställning uppdaterad"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Inställning {0} har uppdaterats"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Fel vid ändring av inställning"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Inga inställningar"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Inga inställningar angivna"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr "Nästa"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Redigera artikel"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Gå till instrumentpanelen för InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Besök dokumentationen för att läsa mer om InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Om InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Serverinformation"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Licensinformation"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Licenser för beroenden av tjänsten"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Öppna navigering"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Öppna huvudnavigeringsmenyn"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Status"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Slutförd produktion"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Produktion som har slutförts"
@@ -4428,24 +4445,24 @@ msgstr "Produktion som har slutförts"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Skrota tillverkad produktion"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Tillverkad produktion har skrotats"
@@ -4453,24 +4470,24 @@ msgstr "Tillverkad produktion har skrotats"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Avbryt produktion"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Tillverkade produkter har raderats"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Tillverkade produkter har raderats"
msgid "IPN"
msgstr "IAN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "Allokerad"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Överordnad kategori"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Sammanfoga lager"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Ta bort lagerartikel"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Överordnad lagerplats"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Redan inloggad"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Utloggad"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Utloggad"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Utloggningen lyckades"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Tema ändrat"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Kolla din inkorg för en återställningslänk. Detta fungerar bara om du har ett konto. Kontrollera även i skräppost."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Återställningen misslyckades"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Redan inloggad"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Inloggad"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Inloggning lyckades"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Lösenord sparat!"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Ditt lösenord har sparats. Du kan nu logga in med ditt nya lösenord."
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "Lösenord ändrat"
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Exportera data"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Exportera"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Lager åtgärder"
@@ -5383,12 +5411,12 @@ msgstr "Har du inget konto?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP-kod"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "Typ"
@@ -5933,220 +5961,220 @@ msgstr "Redigera profil"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr "TOTP borttagen"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Senast använd den"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Skapad den"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "Inte konfigurerad"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "E-postadresser"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "E-postadresser"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Inte aktiverad"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Inte aktiverad"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "Tidsstämpel"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "Metod"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Primär"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Gör primär"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Lägg till e-postadress"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-post"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-postadress"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Lägg till e-postadress"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-post"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-postadress"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Lägg till e-post"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Lägg till e-post"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr "Anpassad status"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Underordnad tillverknings order"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "Tabellvy"
@@ -7245,6 +7274,7 @@ msgstr "Kalendervy"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Extern länk"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Artikel Detaljer"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Inget på lager"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Underkategorier"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Radera objekt"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Försäljningsbar artikel"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Skapad av"
msgid "Default Supplier"
msgstr "Standardleverantör"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "dagar"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Prisintervall"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Välj artikel revision"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Varianter"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Allokeringar"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Stycklista"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Används i"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Prissättning för artikel"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Testmall"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Relaterade artiklar"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Lägg till artikel"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Ta bort artikel"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Borttagning av denna artikel kan inte återställas"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Artikel åtgärder"
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr "Totalpris"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Komponent"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Tårtdiagram"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Stapeldiagram"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Föregående Plats"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Underplaceringar"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Typ av plats"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Högsta nivå lagerplats"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Platsuppgifter"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Standard artiklar"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Redigera lagerplats"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Radera lagerplats"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Redigera lagerplats"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Radera lagerplats"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Platsåtgärder"
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Lägg till filter"
msgid "Clear Filters"
msgstr "Rensa filter"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Inga resultat hittades"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "Visa detaljer"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/th/messages.po b/src/frontend/src/locales/th/messages.po
index df2d1a9669..f136ccb5c5 100644
--- a/src/frontend/src/locales/th/messages.po
+++ b/src/frontend/src/locales/th/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: th\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Thai\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr ""
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr ""
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr ""
@@ -73,7 +73,7 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr ""
@@ -97,12 +97,12 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr ""
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr ""
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr ""
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr ""
@@ -218,14 +219,14 @@ msgstr ""
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr ""
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr ""
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr ""
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr ""
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,11 +341,11 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr ""
@@ -373,10 +374,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr ""
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr ""
@@ -597,11 +598,11 @@ msgstr ""
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr ""
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr ""
@@ -637,7 +638,7 @@ msgstr ""
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr ""
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr ""
@@ -819,19 +820,19 @@ msgstr ""
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr ""
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr ""
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr ""
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr ""
@@ -1579,21 +1580,21 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr ""
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr ""
@@ -1628,7 +1629,7 @@ msgstr ""
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr ""
@@ -1732,7 +1733,7 @@ msgstr ""
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr ""
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr ""
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr ""
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr ""
@@ -2039,9 +2041,13 @@ msgid "Map Columns"
msgstr ""
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
+msgid "Import Rows"
msgstr ""
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
+
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
msgstr ""
@@ -2071,7 +2077,7 @@ msgstr ""
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr ""
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr ""
@@ -2547,7 +2553,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr ""
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr ""
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr ""
@@ -3001,7 +3007,7 @@ msgstr ""
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr ""
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr ""
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr ""
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr ""
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr ""
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr ""
@@ -3206,32 +3219,32 @@ msgstr ""
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr ""
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr ""
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr ""
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr ""
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr ""
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr ""
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr ""
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr ""
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr ""
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr ""
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr ""
@@ -5383,12 +5411,12 @@ msgstr ""
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr ""
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr ""
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr ""
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr ""
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr ""
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr ""
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr ""
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr ""
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr ""
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
-msgid "Locations Action"
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
-msgid "Action for child locations in this location"
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
msgstr ""
#: src/pages/stock/LocationDetail.tsx:280
+msgid "Locations Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:282
+msgid "Action for child locations in this location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/tr/messages.po b/src/frontend/src/locales/tr/messages.po
index 5ad159434a..38a2166af3 100644
--- a/src/frontend/src/locales/tr/messages.po
+++ b/src/frontend/src/locales/tr/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: tr\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Turkish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -46,9 +46,9 @@ msgstr "Sil"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Vazgeç"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Eylemler"
@@ -73,7 +73,7 @@ msgstr "Eylemler"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Ara"
@@ -97,12 +97,12 @@ msgstr "Hayır"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Hayır"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Parça"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Parçalar"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Parametreler"
@@ -188,7 +189,7 @@ msgstr "Parça Test Şablonları"
#: src/tables/purchasing/SupplierPartTable.tsx:83
#: src/tables/stock/StockItemTable.tsx:247
msgid "Supplier Part"
-msgstr "Sağlayıcı Parçası"
+msgstr "Tedarikçi Parçası"
#: lib/enums/ModelInformation.tsx:60
#: src/pages/purchasing/PurchasingIndex.tsx:128
@@ -212,47 +213,47 @@ msgstr "Üretici Parçaları"
#: src/pages/part/CategoryDetail.tsx:371
#: src/tables/Filter.tsx:389
msgid "Part Category"
-msgstr "Parça Sınıfı"
+msgstr "Parça Kategorisi"
#: lib/enums/ModelInformation.tsx:80
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Parça Kategorileri"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
#: src/tables/stock/StockTrackingTable.tsx:48
#: src/tables/stock/StockTrackingTable.tsx:55
msgid "Stock Item"
-msgstr "Stok Ögesi"
+msgstr "Stok Kalemi"
#: lib/enums/ModelInformation.tsx:89
#: lib/enums/Roles.tsx:45
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Stok Kalemleri"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Stok Konumu"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Stok Konumları"
@@ -267,7 +268,7 @@ msgstr "Stok Konum Türleri"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Stok Geçmişi"
@@ -277,27 +278,27 @@ msgstr "Stok Geçmişleri"
#: lib/enums/ModelInformation.tsx:120
msgid "Build"
-msgstr "Yap"
+msgstr "Üret"
#: lib/enums/ModelInformation.tsx:121
msgid "Builds"
-msgstr "Yapılar"
+msgstr "Üretimler"
#: lib/enums/ModelInformation.tsx:130
msgid "Build Line"
-msgstr "Yapı Satırı"
+msgstr "Üretim Satırı"
#: lib/enums/ModelInformation.tsx:131
msgid "Build Lines"
-msgstr "Yapı Satırları"
+msgstr "Üretim Satırları"
#: lib/enums/ModelInformation.tsx:138
msgid "Build Item"
-msgstr "Yapı Ögesi"
+msgstr "Üretim Kalemi"
#: lib/enums/ModelInformation.tsx:139
msgid "Build Items"
-msgstr "Yapı Ögeleri"
+msgstr "Üretim Kalemleri"
#: lib/enums/ModelInformation.tsx:144
#: src/pages/company/CompanyDetail.tsx:345
@@ -340,14 +341,14 @@ msgstr "Satın Alma Siparişi"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
-msgstr "Satın Alma Emirleri"
+msgstr "Satın Alma Siparişleri"
#: lib/enums/ModelInformation.tsx:169
msgid "Purchase Order Line"
@@ -373,13 +374,13 @@ msgstr "Satış Siparişi"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
-msgstr "Satış Emirleri"
+msgstr "Satış Siparişleri"
#: lib/enums/ModelInformation.tsx:185
#: src/pages/sales/SalesOrderShipmentDetail.tsx:445
@@ -398,21 +399,21 @@ msgstr "İade Emri"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
-msgstr "İade Emirleri"
+msgstr "İade Siparişleri"
#: lib/enums/ModelInformation.tsx:204
msgid "Return Order Line Item"
-msgstr "İade Emri Satır Ögesi"
+msgstr "İade Siparişi Satırı"
#: lib/enums/ModelInformation.tsx:205
msgid "Return Order Line Items"
-msgstr "İade Emri Satır Ögeleri"
+msgstr "İade Siparişi Satırları"
#: lib/enums/ModelInformation.tsx:210
#: src/tables/company/AddressTable.tsx:52
@@ -546,23 +547,23 @@ msgstr "Seçim Listeleri"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,26 +585,26 @@ msgid "Admin"
msgstr "Yönetici"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
-msgstr "Yapım İşi Emirleri"
+msgstr "Üretim Emirleri"
#: lib/enums/Roles.tsx:50
#: src/pages/Index/Settings/AdminCenter/Index.tsx:202
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
-msgid "Error rendering component"
-msgstr "Bileşeni oluşturmada hata"
-
#: src/components/Boundary.tsx:14
+msgid "Error rendering component"
+msgstr "Bileşen görüntüleme hatası"
+
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
-msgstr "Bu bileşeni oluştururken bir hata oluştu. Daha fazla bilgi için konsola bakın."
+msgstr "Bu bileşeni görüntülerken bir hata oluştu. Daha fazla bilgi için konsola bakın."
#: src/components/DashboardItemProxy.tsx:34
#~ msgid "Title"
@@ -637,7 +638,7 @@ msgstr "Barkod"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Tara"
@@ -732,7 +733,7 @@ msgstr "Barkod Verisi:"
#: src/components/barcodes/QRCode.tsx:138
msgid "Select Error Correction Level"
-msgstr "Hata Düzeltme Düzeyini Seçin"
+msgstr "Hata Düzeltme Seviyesini Seçin"
#: src/components/barcodes/QRCode.tsx:170
msgid "Failed to link barcode"
@@ -798,12 +799,12 @@ msgstr "Rapor Yazdırma"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Etiket Yazdır"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Yazdır"
@@ -819,19 +820,19 @@ msgstr "Yazdır"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Rapor Yazdır"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Yazdırma Eylemleri"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Etiketler Yazdır"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Raporlar Yazdır"
@@ -860,8 +861,8 @@ msgstr "Diğer işlemler için sağlayıcıya yönlendirileceksiniz."
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Barkod tarayıcıyı aç"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -920,28 +921,28 @@ msgstr "Gecikmiş"
#: src/components/dashboard/DashboardLayout.tsx:282
msgid "Failed to load dashboard widgets."
-msgstr "Dashboard widget'ları yüklenemedi."
+msgstr "Pano kartları yüklenemedi."
#: src/components/dashboard/DashboardLayout.tsx:293
msgid "No Widgets Selected"
-msgstr "Bir widget seçilmedi"
+msgstr "Hiç kart seçilmedi"
#: src/components/dashboard/DashboardLayout.tsx:296
msgid "Use the menu to add widgets to the dashboard"
-msgstr "Gösterge paneline == Widget == eklemek için menüyü kullanın"
+msgstr "Panoya kart eklemek için menüyü kullanın"
#: src/components/dashboard/DashboardMenu.tsx:62
#: src/components/dashboard/DashboardMenu.tsx:138
msgid "Accept Layout"
-msgstr "Bu düzeni onayla"
+msgstr "Yerleşimi Onayla"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
-msgstr "Panel"
+msgstr "Pano"
#: src/components/dashboard/DashboardMenu.tsx:102
msgid "Edit Layout"
@@ -949,51 +950,51 @@ msgstr "Yerleşimi Düzenle"
#: src/components/dashboard/DashboardMenu.tsx:111
msgid "Add Widget"
-msgstr "Widget ekle"
+msgstr "Kart Ekle"
#: src/components/dashboard/DashboardMenu.tsx:120
msgid "Remove Widgets"
-msgstr "Widgetları kaldır"
+msgstr "Kartları Kaldır"
#: src/components/dashboard/DashboardMenu.tsx:129
msgid "Clear Widgets"
-msgstr "Widgetları Temizle"
+msgstr "Kartları Temizle"
#: src/components/dashboard/DashboardWidget.tsx:81
msgid "Remove this widget from the dashboard"
-msgstr "Bu widget'ı panodan kaldır"
+msgstr "Bu kartı panodan kaldır"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:77
msgid "Filter dashboard widgets"
-msgstr "Panodaki widgetları filtrele"
+msgstr "Pano kartlarını filtrele"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:98
msgid "Add this widget to the dashboard"
-msgstr "Bu widget'ı panoya ekle"
+msgstr "Bu kartı panoya ekle"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:123
msgid "No Widgets Available"
-msgstr "Hiç widget yok"
+msgstr "Hiç Kart Yok"
#: src/components/dashboard/DashboardWidgetDrawer.tsx:124
msgid "There are no more widgets available for the dashboard"
-msgstr "Panoya eklenebilecek daha fazla widget yok"
+msgstr "Pano için kullanılabilir kart kalmadı"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:24
msgid "Subscribed Parts"
-msgstr "Abone Olunan Parçalar"
+msgstr "Takip Edilen Parçalar"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:25
msgid "Show the number of parts which you have subscribed to"
-msgstr "Abone olduğunuz parçaların sayısını gösterin"
+msgstr "Takip edilen parça sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:31
msgid "Subscribed Categories"
-msgstr "Abone Olunan Sınıflar"
+msgstr "Tekip Edilen Kategoriler"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:32
msgid "Show the number of part categories which you have subscribed to"
-msgstr "Abone olduğunuz parça kategorilerinin sayısını gösterin"
+msgstr "Takip edilen parça kategorisi sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:41
msgid "Invalid BOMs"
@@ -1001,7 +1002,7 @@ msgstr "Geçersiz BOM'lar"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:42
msgid "Assemblies requiring bill of materials validation"
-msgstr "Malzeme listesi doğrulaması gerektiren montajlar"
+msgstr "Ürün ağacı doğrulaması gerektiren montajlar"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:53
#: src/tables/part/PartTable.tsx:263
@@ -1010,31 +1011,31 @@ msgstr "Düşük Stok"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:55
msgid "Show the number of parts which are low on stock"
-msgstr "Stokta düşük olan parçaların sayısını gösterin"
+msgstr "Stokta düşük olan parça sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:64
msgid "Required for Build Orders"
-msgstr "Yapı Siparişleri için Gerekli"
+msgstr "Üretim Emirleri için Gerekenler"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:66
msgid "Show parts which are required for active build orders"
-msgstr "Aktif sipariş oluşturma ihtiyacı olan parçaları gösterin"
+msgstr "Aktif üretim emirleri için gereken parçaları göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:71
msgid "Expired Stock Items"
-msgstr "Son kullanma tarihi Geçmiş Stok Ürünleri"
+msgstr "Süresi Dolan Stok Kalemleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:73
msgid "Show the number of stock items which have expired"
-msgstr "Son kullanma tarihi geçen stok ürünlerinin sayısını gösterin"
+msgstr "Süresi dolan stok kalemlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:79
msgid "Stale Stock Items"
-msgstr "Beklenen oranda artık satış olmayan stok ürünleri"
+msgstr "Eskiyen Stok Kalemleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:81
msgid "Show the number of stock items which are stale"
-msgstr "Beklenen oranda satış olmayan stok ürünlerinin sayısını gösterin"
+msgstr "Eskiyen stok kalemlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:87
msgid "Active Build Orders"
@@ -1042,15 +1043,15 @@ msgstr "Aktif Üretim Emirleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:89
msgid "Show the number of build orders which are currently active"
-msgstr "Şuan aktif olan üretim emirlerinin sayısını gösterin"
+msgstr "Şu an aktif olan üretim emirlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:94
msgid "Overdue Build Orders"
-msgstr "Geciken Yapım Siparişleri"
+msgstr "Geciken Üretim Emirleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:96
msgid "Show the number of build orders which are overdue"
-msgstr "Süresi gecikmiş sipariş ihtiyaçlarının sayısını gösterin"
+msgstr "Geciken üretim emirlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:101
msgid "Assigned Build Orders"
@@ -1058,7 +1059,7 @@ msgstr "Atanmış Üretim Emirleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:103
msgid "Show the number of build orders which are assigned to you"
-msgstr "Size atanan sipariş oluşturma ihtiyaçlarının sayısını gösterin"
+msgstr "Size atanan üretim emirlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:108
msgid "Active Sales Orders"
@@ -1066,7 +1067,7 @@ msgstr "Aktif Satış Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:110
msgid "Show the number of sales orders which are currently active"
-msgstr "Şu anda aktif olan satış siparişlerinin sayısını gösterin"
+msgstr "Şu an aktif olan satış siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:115
msgid "Overdue Sales Orders"
@@ -1074,15 +1075,15 @@ msgstr "Geciken Satış Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:117
msgid "Show the number of sales orders which are overdue"
-msgstr "Gecikmiş olan satış siparişlerinin sayısını gösterin"
+msgstr "Geciken satış siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:122
msgid "Assigned Sales Orders"
-msgstr "Atanmış Satış Emirleri"
+msgstr "Atanmış Satış Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:124
msgid "Show the number of sales orders which are assigned to you"
-msgstr "Size atanmış satış emirlerinin sayısını gösterin"
+msgstr "Size atanmış satış siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:129
#: src/pages/sales/SalesIndex.tsx:87
@@ -1095,7 +1096,7 @@ msgstr "Bekleyen satış siparişi gönderimlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:136
msgid "Active Purchase Orders"
-msgstr "Aktif Satın Alma Emirleri"
+msgstr "Aktif Satın Alma Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:138
msgid "Show the number of purchase orders which are currently active"
@@ -1107,11 +1108,11 @@ msgstr "Geciken Satın Alma Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:145
msgid "Show the number of purchase orders which are overdue"
-msgstr "Vadesi geçmiş satın alma siparişlerinin sayısını gösterin"
+msgstr "Geciken satın alma siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:150
msgid "Assigned Purchase Orders"
-msgstr "Atanmış Satın Alma Emirleri"
+msgstr "Atanmış Satın Alma Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:152
msgid "Show the number of purchase orders which are assigned to you"
@@ -1119,11 +1120,11 @@ msgstr "Size atanmış satın alma siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:157
msgid "Active Return Orders"
-msgstr "Aktif İade Emirleri"
+msgstr "Aktif İade Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:159
msgid "Show the number of return orders which are currently active"
-msgstr "Şuan aktif olan iade emirlerinin sayısını gösterin"
+msgstr "Şu an aktif olan iade siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:164
msgid "Overdue Return Orders"
@@ -1131,15 +1132,15 @@ msgstr "Gecikmiş iade siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:166
msgid "Show the number of return orders which are overdue"
-msgstr "Gecikmiş iade siparişlerinin sayısını gösterin"
+msgstr "Gecikmiş iade siparişlerinin sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:171
msgid "Assigned Return Orders"
-msgstr "Atanmış İade Emirleri"
+msgstr "Atanmış İade Siparişleri"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:173
msgid "Show the number of return orders which are assigned to you"
-msgstr "Size atanana gecikmiş iade siparişlerinin sayısını gösterin"
+msgstr "Size atanan gecikmiş iade siparişi sayısını göster"
#: src/components/dashboard/DashboardWidgetLibrary.tsx:193
#: src/components/dashboard/widgets/GetStartedWidget.tsx:15
@@ -1190,7 +1191,7 @@ msgstr "Süper Kullanıcı Gerekir"
#: src/components/dashboard/widgets/NewsWidget.tsx:116
msgid "This widget requires superuser permissions"
-msgstr "Bu Widget Süper Kullanıcı İzinlerine İhtiyaç duyar"
+msgstr "Bu kart süper kullanıcı izinleri gerektirir"
#: src/components/dashboard/widgets/NewsWidget.tsx:133
msgid "No News"
@@ -1229,19 +1230,19 @@ msgstr "Herhangi bir ad tanımlanmamış"
#: src/components/details/DetailsImage.tsx:77
msgid "Remove Image"
-msgstr "Resmi Kaldır"
+msgstr "Görseli Kaldır"
#: src/components/details/DetailsImage.tsx:80
msgid "Remove the associated image from this item?"
-msgstr "Bu ögeyle ilişkilendirilmiş resim kaldırılsın mı?"
+msgstr "Bu ögeyle ilişkilendirilmiş görsel kaldırılsın mı?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1261,11 +1262,11 @@ msgstr "Dosya(ları) seçmek için tıkla"
#: src/components/details/DetailsImage.tsx:172
msgid "Image uploaded"
-msgstr "Görüntü yüklendi"
+msgstr "Görsel yüklendi"
#: src/components/details/DetailsImage.tsx:173
msgid "Image has been uploaded successfully"
-msgstr "Görüntü başarıyla yüklendi"
+msgstr "Görsel başarıyla yüklendi"
#: src/components/details/DetailsImage.tsx:180
#: src/tables/general/AttachmentTable.tsx:201
@@ -1280,42 +1281,42 @@ msgstr "Temizle"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Gönder"
#: src/components/details/DetailsImage.tsx:300
msgid "Select from existing images"
-msgstr "Var olan resimlerden seç"
+msgstr "Mevcut görsellerden seç"
#: src/components/details/DetailsImage.tsx:308
msgid "Select Image"
-msgstr "Resim Seç"
+msgstr "Görsel Seç"
#: src/components/details/DetailsImage.tsx:324
msgid "Download remote image"
-msgstr "Uzak görüntüyü indirin"
+msgstr "Uzak görseli indir"
#: src/components/details/DetailsImage.tsx:339
msgid "Upload new image"
-msgstr "Yeni resim yükle"
+msgstr "Yeni görsel yükle"
#: src/components/details/DetailsImage.tsx:346
msgid "Upload Image"
-msgstr "Resim Yükle"
+msgstr "Görsel Yükle"
#: src/components/details/DetailsImage.tsx:359
msgid "Delete image"
-msgstr "Resmi sil"
+msgstr "Görseli sil"
#: src/components/details/DetailsImage.tsx:393
msgid "Download Image"
-msgstr "Görüntüyü indirin"
+msgstr "Görseli İndir"
#: src/components/details/DetailsImage.tsx:398
msgid "Image downloaded successfully"
-msgstr "Görüntü başarıyla indirildi"
+msgstr "Görsel başarıyla indirildi"
#: src/components/details/PartIcons.tsx:43
#~ msgid "Part is a template part (variants can be made from this part)"
@@ -1347,11 +1348,11 @@ msgstr "Görüntü başarıyla indirildi"
#: src/components/editors/NotesEditor.tsx:75
msgid "Image upload failed"
-msgstr "Resim yükleme başarısız oldu"
+msgstr "Görsel yükleme başarısız oldu"
#: src/components/editors/NotesEditor.tsx:85
msgid "Image uploaded successfully"
-msgstr "Görüntü başarıyla yüklendi"
+msgstr "Görsel başarıyla yüklendi"
#: src/components/editors/NotesEditor.tsx:119
msgid "Notes saved successfully"
@@ -1399,7 +1400,7 @@ msgstr "Kod"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:50
msgid "Error rendering preview"
-msgstr "Önizleme görüntülenemiyor"
+msgstr "Önizleme görüntüleme hatası"
#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:120
msgid "Preview not available, click \"Reload Preview\"."
@@ -1436,7 +1437,7 @@ msgstr "Önizlemeyi Kaydedip Yeniden Yüklemek istediğinize emin misiniz?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:183
msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?"
-msgstr "Önizlemeyi oluşturmak için mevcut şablonun, aktif kullanımdaysa etiketi bozabilecek değişikliklerinizle sunucuda değiştirilmesi gerekir. Devam etmek istiyor musunuz?"
+msgstr "Önizlemeyi görüntülemek için mevcut şablonun, aktif kullanımdaysa etiketi bozabilecek değişikliklerinizle sunucuda değiştirilmesi gerekir. Devam etmek istiyor musunuz?"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:187
msgid "Save & Reload"
@@ -1480,7 +1481,7 @@ msgstr "Önizlenecek örneği seçin"
#: src/components/editors/TemplateEditor/TemplateEditor.tsx:423
msgid "Error rendering template"
-msgstr "Şablonu oluşturmada hata"
+msgstr "Şablonu işleme hatası"
#: src/components/errors/ClientError.tsx:23
msgid "Client Error"
@@ -1579,21 +1580,21 @@ msgstr "Başarıyla giriş yapıldı"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Giriş başarısız"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Lütfen bilgilerinizi kontrol edin ve yeniden giriş yapın."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "E-posta teslimi başarılı"
@@ -1628,7 +1629,7 @@ msgstr "Kullanıcı adınız"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Parola"
@@ -1655,7 +1656,7 @@ msgstr "Size giriş yapabilmeniz için bir link göndereceğiz - eğer kayıtlı
#: src/components/forms/AuthenticationForm.tsx:190
msgid "Send me an email"
-msgstr "Bize bir eposta gönderin"
+msgstr "Bana bir e-posta gönder"
#: src/components/forms/AuthenticationForm.tsx:192
msgid "Use username and password"
@@ -1732,7 +1733,7 @@ msgstr "Sunucu"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API Sürümü"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1868,7 +1870,7 @@ msgstr "Hiç simge seçilmedi"
#: src/components/forms/fields/IconField.tsx:161
msgid "Uncategorized"
-msgstr "Sınıflandırılmamış"
+msgstr "Kategorisiz"
#: src/components/forms/fields/IconField.tsx:211
#: src/components/nav/Layout.tsx:138
@@ -1879,7 +1881,7 @@ msgstr "Ara..."
#: src/components/forms/fields/IconField.tsx:225
#: src/components/wizards/ImportPartWizard.tsx:304
msgid "Select category"
-msgstr "Sınıf seç"
+msgstr "Kategori seçin"
#: src/components/forms/fields/IconField.tsx:234
msgid "Select pack"
@@ -1892,7 +1894,7 @@ msgstr "{0} simge"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Yükleniyor"
@@ -1918,7 +1920,7 @@ msgstr "Yeni satır ekle"
#: src/components/images/Thumbnail.tsx:12
msgid "Thumbnail"
-msgstr "Küçük resim"
+msgstr "Küçük görsel"
#: src/components/importer/ImportDataSelector.tsx:175
msgid "Importing Rows"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Veri İşleniyor"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Bir hata oluştu"
@@ -2002,31 +2004,31 @@ msgstr "Sütun seçin veya bu alanı yok saymak için boş bırakın."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Bu alanı yok say"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Veri sütunları veritabanı alanları ile eşleştiriliyor"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Sütun Eşleştirmesini Kabul Et"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Veritabanı Alanı"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Alan Açıklaması"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "İçe Aktarılmış Sütun"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Varsayılan Değer"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Sütunları Eşleştir"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Veri İçe Aktar"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Veri başarıyla içe aktarıldı"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Kapat"
@@ -2208,7 +2214,7 @@ msgstr "Grup rolleri güncelleniyor"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "Rol"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "Görüntüle"
@@ -2255,10 +2261,10 @@ msgstr "Öğe yok"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Bağlantılar"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Dokümantasyon"
@@ -2408,11 +2414,11 @@ msgstr "Veritabanı"
#: src/components/modals/ServerInfoModal.tsx:49
#: src/components/nav/Alerts.tsx:120
msgid "Debug Mode"
-msgstr "Hata Ayıklama Kipi"
+msgstr "Hata Ayıklama Modu"
#: src/components/modals/ServerInfoModal.tsx:54
msgid "Server is running in debug mode"
-msgstr "Sunucu hata ayıklama kipinde çalışıyor"
+msgstr "Sunucu hata ayıklama modunda çalışıyor"
#: src/components/modals/ServerInfoModal.tsx:62
msgid "Docker Mode"
@@ -2547,7 +2553,7 @@ msgstr "Ayarlar"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "Kullanıcı Ayarları"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Sistem Ayarları"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Yönetici Merkezi"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Çıkış"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2642,7 +2648,7 @@ msgstr "Üretim"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:558
#: src/pages/purchasing/PurchasingIndex.tsx:212
msgid "Purchasing"
-msgstr "Satın Alınıyor"
+msgstr "Satın Alma"
#: src/components/nav/NavigationDrawer.tsx:98
#: src/defaults/links.tsx:60
@@ -2652,7 +2658,7 @@ msgstr "Satın Alınıyor"
#: src/pages/sales/SalesOrderDetail.tsx:624
#: src/pages/sales/SalesOrderShipmentDetail.tsx:448
msgid "Sales"
-msgstr "Satışlar"
+msgstr "Satış"
#: src/components/nav/NavigationDrawer.tsx:180
msgid "Navigation"
@@ -2705,11 +2711,11 @@ msgstr "Arama grubunu kaldır"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
-msgstr "Sağlayıcılar"
+msgstr "Tedarikçiler"
#: src/components/nav/SearchDrawer.tsx:298
#: src/pages/part/PartSupplierDetail.tsx:23
@@ -2728,7 +2734,7 @@ msgstr "Müşteriler"
#: src/components/nav/SearchDrawer.tsx:477
msgid "Enter search text"
-msgstr "Arama metnini gir"
+msgstr "Arama metnini girin"
#: src/components/nav/SearchDrawer.tsx:488
msgid "Refresh search results"
@@ -2797,11 +2803,11 @@ msgstr ""
#: src/components/plugins/PluginDrawer.tsx:47
msgid "Plugin Inactive"
-msgstr "Eklenti Devre Dışı"
+msgstr "Eklenti Pasif"
#: src/components/plugins/PluginDrawer.tsx:50
msgid "Plugin is not active"
-msgstr "Eklenti etkisiz"
+msgstr "Eklenti aktif değil"
#: src/components/plugins/PluginDrawer.tsx:59
msgid "Plugin Information"
@@ -2819,7 +2825,7 @@ msgstr "Eklenti Bilgileri"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,10 +2985,10 @@ msgstr "Gönderi"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
-msgstr "İnaktif"
+msgstr "Pasif"
#: src/components/render/Part.tsx:31
#: src/tables/part/PartTable.tsx:281
@@ -3001,7 +3007,7 @@ msgstr "Stok yok"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "Siparişte"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Kategori"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Kategori"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Konum"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Seri Numarası"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Seri Numarası"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Miktar"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Parti"
@@ -3143,7 +3148,7 @@ msgstr "Durum Ekle"
#: src/components/settings/QuickAction.tsx:85
msgid "Open an Issue"
-msgstr "Sorun bildir"
+msgstr "Bir Sorun Bildir"
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
@@ -3193,11 +3198,19 @@ msgstr "Özel Durum Ekle"
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Ayarı Düzenle"
@@ -3206,32 +3219,32 @@ msgstr "Ayarı Düzenle"
msgid "Setting {key} updated successfully"
msgstr "{key} ayarı başarıyla güncellendi"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Ayar güncellendi"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "{0} ayarı başarıyla güncellendi"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Ayarı düzenlemede hata"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "Ayarlar yüklenirken hata"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "Ayar Yok"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Ayar belirtilmemiş"
@@ -3617,7 +3630,7 @@ msgstr "Zaten İçe Aktarıldı"
#: src/tables/purchasing/PurchaseOrderTable.tsx:109
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:40
msgid "Supplier"
-msgstr "Sağlayıcı"
+msgstr "Tedarikçi"
#: src/components/wizards/ImportPartWizard.tsx:221
#: src/forms/StockForms.tsx:614
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr "Sonraki"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Parçayı Düzenle"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -3803,7 +3816,7 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:180
#: src/tables/purchasing/SupplierPartTable.tsx:258
msgid "Supplier part created"
-msgstr "Sağlayıcı parçası oluşturuldu"
+msgstr "Tedarikçi parçası oluşturuldu"
#: src/components/wizards/OrderPartsWizard.tsx:247
msgid "Add to Purchase Order"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
-msgstr "InvenTree Gösterge Paneline Git"
+msgstr "InvenTree Panosuna Git"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "InvenTree hakkında daha fazla öğrenmek için belgelendirmeyi ziyaret edin"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "InvenTree org hakkında"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Sunucu Bilgisi"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Lisans Bilgisi"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Servisin bağımlılıkları için lisanslar"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Gezinmeyi Aç"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Ana gezinme menüsünü aç"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Yönetim Merkezine Git"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
-msgstr "Yapım Çıktısı"
+msgstr "Üretim Çıktısı"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,61 +4433,61 @@ msgstr ""
msgid "Status"
msgstr "Durum"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
-msgstr "Tamamlanan Yapı Çıktıları"
+msgstr "Üretim Çıktılarını Tamamla"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
-msgstr "Yapı çıktıları tamamlandı"
+msgstr "Üretim çıktıları tamamlandı"
#: src/forms/BuildForms.tsx:408
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
-msgstr "Yapı Çıktılarını Hurdaya Ayır"
+msgstr "Üretim Çıktılarını Hurdaya Ayır"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
-msgstr "Yapı çıktıları hurdaya ayrıldı"
+msgstr "Üretim çıktıları hurdaya ayrıldı"
#: src/forms/BuildForms.tsx:470
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
-msgstr "Yapı Çıktılarını İptal Et"
+msgstr "Üretim Çıktılarını İptal Et"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
-msgstr "Yapı çıktıları iptal edildi"
+msgstr "Üretim çıktıları iptal edildi"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Yapı çıktıları iptal edildi"
msgid "IPN"
msgstr "DPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
-msgstr "Ayrıldı"
+msgstr "Tahsis Edildi"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Kaynak Konum"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4523,39 +4540,39 @@ msgstr ""
#: src/tables/sales/SalesOrderLineItemTable.tsx:380
#: src/tables/sales/SalesOrderLineItemTable.tsx:406
msgid "Allocate Stock"
-msgstr "Stoku Ayır"
+msgstr "Stoku Tahsis Et"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,32 +4589,32 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
#: src/tables/part/PartTable.tsx:325
msgid "Subscribed"
-msgstr "Abone olundu"
+msgstr "Takip ediliyor"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
-msgstr "Üst parça sınıfı"
+msgstr "Üst parça kategorisi"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4624,15 +4641,15 @@ msgstr "Konum Seçiniz"
#: src/forms/PurchaseOrderForms.tsx:470
msgid "Item Destination selected"
-msgstr "Öge hedefi seçildi"
+msgstr "Kalemin Hedefi seçildi"
#: src/forms/PurchaseOrderForms.tsx:480
msgid "Part category default location selected"
-msgstr "Parça sınıfı varsayılan konum seçildi"
+msgstr "Parça kategorisi varsayılan konumu seçildi"
#: src/forms/PurchaseOrderForms.tsx:490
msgid "Received stock location selected"
-msgstr "Alınan stok konumu seçildi"
+msgstr "Varış konumu seçildi"
#: src/forms/PurchaseOrderForms.tsx:498
msgid "Default location selected"
@@ -4679,19 +4696,19 @@ msgstr "Varsayılan konumda depola"
#: src/forms/PurchaseOrderForms.tsx:677
msgid "Store at line item destination "
-msgstr "Satır ögesinin hedefinde depola "
+msgstr "Satırdaki hedefe depola "
#: src/forms/PurchaseOrderForms.tsx:689
msgid "Store with already received stock"
-msgstr "Önceden alınmış bir stok ile depola"
+msgstr "Mevcut stokla birlikte depola"
#: src/forms/PurchaseOrderForms.tsx:713
#: src/pages/build/BuildDetail.tsx:341
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4748,11 +4765,11 @@ msgstr "SKU"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:283
#: src/tables/sales/ReturnOrderLineItemTable.tsx:171
msgid "Received"
-msgstr "Alındı"
+msgstr "Teslim Alındı"
#: src/forms/PurchaseOrderForms.tsx:869
msgid "Receive Line Items"
-msgstr "Alınan Satır Ögeleri"
+msgstr "Kalemleri Teslim Al"
#: src/forms/PurchaseOrderForms.tsx:875
msgid "Items received"
@@ -4812,7 +4829,7 @@ msgstr "Verilen miktarı tekli ögeler yerine paketler olarak ekle"
#: src/forms/StockForms.tsx:210
msgid "Enter initial quantity for this stock item"
-msgstr "Bu stok ögesi için ilk miktarı giriniz"
+msgstr "Bu stok kalemi için başlangıç miktarını girin"
#: src/forms/StockForms.tsx:220
msgid "Enter serial numbers for new stock (or leave blank)"
@@ -4827,7 +4844,7 @@ msgstr "Stok Durumu"
#: src/tables/stock/StockItemTable.tsx:525
#: src/tables/stock/StockItemTable.tsx:572
msgid "Add Stock Item"
-msgstr "Stok Ögesi Ekle"
+msgstr "Stok Kalemi Ekle"
#: src/forms/StockForms.tsx:361
msgid "Select the part to install"
@@ -4854,145 +4871,145 @@ msgstr "Geri Dön"
msgid "Count"
msgstr "Say"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Stok Ekle"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Stok Eklendi"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Stok Kaldır"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Stok Kaldırıldı"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Stoku Aktar"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "Stok Transfer Edildi"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Stoku Say"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "Stok Sayıldı"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Stok Durumunu Değiştir"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "Stok Durumu Değişti"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Stoku Birleştir"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "Stok Birleştirildi"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "Stoku Müşteriye Ata"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "Stok Müşteriye Atandı"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
-msgstr "Stok Ögelerini Sil"
+msgstr "Stok Kalemlerini Sil"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "Stok Silindi"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Üst stok konumu"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "Seri Numarası Bul"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "Eşleşen ürün bulunamadı"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr "Dahili sunucu hatası"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Zaten giriş yapıldı"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Çıkış Yapıldı"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "Sunucudan yanıt yok."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "Sunucudan yanıt yok."
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Çıkış Yapıldı"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Başarıyla çıkış yapıldı"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "Tema değişti"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Bir sıfırlama bağlantısı için gelen kutunuzu veya spam kutunuzu yoklayın. Bu yalnızca bir hesabınız varsa çalışacaktır."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Sıfırlama başarısız"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Zaten giriş yapıldı"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Giriş Yapıldı"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Başarıyla giriş yapıldı"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Şifre belirlendi"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Şifreniz başarıyla değiştirildi. Artık yeni şifrenizle giriş yapabilirsiniz"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr "İstek zaman aşımı"
msgid "Exporting Data"
msgstr "Veriler Dışa Aktarılıyor"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "Verileri dışa aktar"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "Dışa Aktar"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Stok Eylemleri"
@@ -5383,12 +5411,12 @@ msgstr "Bir hesabınız yok mu?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5922,7 +5950,7 @@ msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:131
msgid "Profile Details"
-msgstr "Profil Detayları"
+msgstr "Profil Ayrıntıları"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:134
msgid "Edit Profile"
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "Kurtarma Kodları"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "Son kullanımı"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "Oluşturulma tarihi"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Etkin değil"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Etkin değil"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Aşağıdaki e-posta adresleri hesabınızla ilişkilendirilmiştir:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Birincil"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Doğrulandı"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Doğrulanmadı"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Birincil Yap"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Doğrulama Kodunu Yeniden Gönder"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "E-posta Adresi Ekle"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "E-posta"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "E-Posta adresi"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "E-posta Adresi Ekle"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "E-posta"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "E-Posta adresi"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "E-posta Ekle"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "E-posta Ekle"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6545,7 +6573,7 @@ msgstr "Özel Birimler"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:202
#: src/pages/part/CategoryDetail.tsx:329
msgid "Category Parameters"
-msgstr "Sınıf Parametreleri"
+msgstr "Kategori Parametreleri"
#: src/pages/Index/Settings/AdminCenter/Index.tsx:221
msgid "Location Types"
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -6940,18 +6968,18 @@ msgstr "Referans"
#: src/pages/build/BuildDetail.tsx:259
msgid "Parent Build"
-msgstr "Üst Yapı"
+msgstr "Üst Üretim"
#: src/pages/build/BuildDetail.tsx:270
msgid "Build Quantity"
-msgstr "Yapı Miktarı"
+msgstr "Üretim Miktarı"
#: src/pages/build/BuildDetail.tsx:276
#: src/pages/part/PartDetail.tsx:598
#: src/tables/bom/BomTable.tsx:365
#: src/tables/bom/BomTable.tsx:407
msgid "Can Build"
-msgstr "Yapılabilir"
+msgstr "Üretebilir"
#: src/pages/build/BuildDetail.tsx:285
#: src/pages/build/BuildDetail.tsx:475
@@ -6962,7 +6990,7 @@ msgstr "Tamamlanan Çıkışlar"
#: src/tables/Filter.tsx:381
#: src/tables/build/BuildOrderTable.tsx:143
msgid "Issued By"
-msgstr "Veren"
+msgstr "Düzenleyen"
#: src/pages/build/BuildDetail.tsx:310
#: src/pages/part/PartDetail.tsx:691
@@ -7028,7 +7056,7 @@ msgstr "Tamamlandı"
#: src/pages/build/BuildDetail.tsx:411
msgid "Build Details"
-msgstr "Yapı Ayrıntıları"
+msgstr "Üretim Ayrıntıları"
#: src/pages/build/BuildDetail.tsx:417
msgid "Required Parts"
@@ -7039,7 +7067,7 @@ msgstr ""
#: src/pages/sales/SalesOrderShipmentDetail.tsx:259
#: src/tables/part/PartSalesAllocationsTable.tsx:73
msgid "Allocated Stock"
-msgstr "Ayrılan Stok"
+msgstr "Tahsis Edilen Stok"
#: src/pages/build/BuildDetail.tsx:445
msgid "Consumed Stock"
@@ -7055,10 +7083,10 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:504
msgid "Child Build Orders"
-msgstr "Alt Yapı Siparişleri"
+msgstr "Alt Üretim Emirleri"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7067,17 +7095,17 @@ msgstr "Test Sonuçları"
#: src/pages/build/BuildDetail.tsx:555
msgid "Edit Build Order"
-msgstr "Yapı Siparişini Düzenle"
+msgstr "Üretim Emrini Düzenle"
#: src/pages/build/BuildDetail.tsx:577
#: src/tables/build/BuildOrderTable.tsx:207
#: src/tables/build/BuildOrderTable.tsx:223
msgid "Add Build Order"
-msgstr "Yapı Siparişi Ekle"
+msgstr "Üretim Emri Ekle"
#: src/pages/build/BuildDetail.tsx:587
msgid "Cancel Build Order"
-msgstr "Yapı Siparişini İptal Et"
+msgstr "Üretim Emrini İptal Et"
#: src/pages/build/BuildDetail.tsx:589
#: src/pages/purchasing/PurchaseOrderDetail.tsx:421
@@ -7095,14 +7123,14 @@ msgstr "Bu siparişi iptal et"
#: src/pages/build/BuildDetail.tsx:599
msgid "Hold Build Order"
-msgstr "Yapı Siparişini Beklet"
+msgstr "Üretimi Askıya Al"
#: src/pages/build/BuildDetail.tsx:601
#: src/pages/purchasing/PurchaseOrderDetail.tsx:428
#: src/pages/sales/ReturnOrderDetail.tsx:439
#: src/pages/sales/SalesOrderDetail.tsx:466
msgid "Place this order on hold"
-msgstr "Bu yapı siparişini beklemeye al"
+msgstr "Bu üretimi askıya al"
#: src/pages/build/BuildDetail.tsx:602
#: src/pages/purchasing/PurchaseOrderDetail.tsx:429
@@ -7113,25 +7141,25 @@ msgstr "Beklemeye alınan sipariş"
#: src/pages/build/BuildDetail.tsx:607
msgid "Issue Build Order"
-msgstr "Yapı Siparişi Ver"
+msgstr "Üretim Emri Düzenle"
#: src/pages/build/BuildDetail.tsx:609
#: src/pages/purchasing/PurchaseOrderDetail.tsx:412
#: src/pages/sales/ReturnOrderDetail.tsx:423
#: src/pages/sales/SalesOrderDetail.tsx:450
msgid "Issue this order"
-msgstr "Bu siparişi ver"
+msgstr "Bu siparişi düzenle"
#: src/pages/build/BuildDetail.tsx:610
#: src/pages/purchasing/PurchaseOrderDetail.tsx:413
#: src/pages/sales/ReturnOrderDetail.tsx:424
#: src/pages/sales/SalesOrderDetail.tsx:451
msgid "Order issued"
-msgstr "Sipariş verildi"
+msgstr "Sipariş düzenlendi"
#: src/pages/build/BuildDetail.tsx:629
msgid "Complete Build Order"
-msgstr "Yapı Siparişini Tamamla"
+msgstr "Üretim Emrini Tamamla"
#: src/pages/build/BuildDetail.tsx:635
#: src/pages/purchasing/PurchaseOrderDetail.tsx:441
@@ -7152,7 +7180,7 @@ msgstr "Sipariş tamamlandı"
#: src/pages/sales/ReturnOrderDetail.tsx:475
#: src/pages/sales/SalesOrderDetail.tsx:521
msgid "Issue Order"
-msgstr "Sipariş Ver"
+msgstr "Sipariş Düzenle"
#: src/pages/build/BuildDetail.tsx:672
#: src/pages/purchasing/PurchaseOrderDetail.tsx:471
@@ -7163,7 +7191,7 @@ msgstr "Siparişi Tamamla"
#: src/pages/build/BuildDetail.tsx:691
msgid "Build Order Actions"
-msgstr "Yapım Siprişi Eylemleri"
+msgstr "Üretim Emri Eylemleri"
#: src/pages/build/BuildDetail.tsx:696
#: src/pages/purchasing/PurchaseOrderDetail.tsx:494
@@ -7200,7 +7228,7 @@ msgstr "Siparişi iptal et"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157
#: src/tables/stock/StockTrackingTable.tsx:109
msgid "Build Order"
-msgstr "Yapım Siparişi"
+msgstr "Üretim Emri"
#: src/pages/build/BuildIndex.tsx:23
#~ msgid "Build order created"
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7302,7 +7332,7 @@ msgstr "Müşteri"
#: src/pages/company/CompanyDetail.tsx:182
msgid "Company Details"
-msgstr "Şirket Detayları"
+msgstr "Şirket Ayrıntıları"
#: src/pages/company/CompanyDetail.tsx:188
msgid "Supplied Parts"
@@ -7349,7 +7379,7 @@ msgstr "Harici Bağlantı"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Parça Ayrıntıları"
@@ -7365,7 +7395,7 @@ msgstr "Üretici Parçası Ayrıntıları"
#: src/pages/company/SupplierPartDetail.tsx:253
#: src/pages/purchasing/PurchaseOrderDetail.tsx:382
msgid "Received Stock"
-msgstr "Alınan Stok"
+msgstr "Teslim Alınan Stok"
#: src/pages/company/ManufacturerPartDetail.tsx:211
#: src/tables/purchasing/ManufacturerPartTable.tsx:108
@@ -7407,7 +7437,7 @@ msgstr "Paket Miktarı"
#: src/pages/company/SupplierPartDetail.tsx:205
msgid "Supplier Availability"
-msgstr "Sağlayıcı Kullanılabilirliği"
+msgstr "Tedarikçi Kullanılabilirliği"
#: src/pages/company/SupplierPartDetail.tsx:213
msgid "Availability Updated"
@@ -7419,36 +7449,36 @@ msgstr "Kullanılabilirlik"
#: src/pages/company/SupplierPartDetail.tsx:247
msgid "Supplier Part Details"
-msgstr "Sağlayıcı Parça Ayrıntıları"
+msgstr "Tedarikçi Parça Ayrıntıları"
#: src/pages/company/SupplierPartDetail.tsx:280
#: src/pages/part/PartPricingPanel.tsx:113
#: src/pages/part/pricing/PricingOverviewPanel.tsx:239
msgid "Supplier Pricing"
-msgstr "Sağlayıcı Fiyatlandırması"
+msgstr "Tedarikçi Fiyatlandırması"
#: src/pages/company/SupplierPartDetail.tsx:313
msgid "Supplier Part Actions"
-msgstr "Sağlayıcı Parçası Eylemleri"
+msgstr "Tedarikçi Parçası Eylemleri"
#: src/pages/company/SupplierPartDetail.tsx:337
#: src/tables/purchasing/SupplierPartTable.tsx:244
msgid "Edit Supplier Part"
-msgstr "Sağlayıcı Parçasını Düzenle"
+msgstr "Tedarikçi Parçasını Düzenle"
#: src/pages/company/SupplierPartDetail.tsx:345
#: src/tables/purchasing/SupplierPartTable.tsx:264
msgid "Delete Supplier Part"
-msgstr "Sağlayıcı Parçasını Sil"
+msgstr "Tedarikçi Parçasını Sil"
#: src/pages/company/SupplierPartDetail.tsx:353
#: src/tables/purchasing/SupplierPartTable.tsx:172
#: src/tables/purchasing/SupplierPartTable.tsx:251
msgid "Add Supplier Part"
-msgstr "Sağlayıcı Parçası Ekle"
+msgstr "Tedarikçi Parçası Ekle"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Stok Yok"
@@ -7466,7 +7496,7 @@ msgstr "Grup Adı"
#: src/pages/core/GroupDetail.tsx:67
#: src/tables/settings/GroupTable.tsx:85
msgid "Group Details"
-msgstr "Grup Detayları"
+msgstr "Grup Ayrıntıları"
#: src/pages/core/GroupDetail.tsx:55
#: src/tables/settings/GroupTable.tsx:112
@@ -7489,14 +7519,14 @@ msgstr "Kullanıcı Profili"
#: src/pages/core/UserDetail.tsx:188
#: src/tables/settings/UserTable.tsx:164
msgid "User Details"
-msgstr "Kullanıcı Detayları"
+msgstr "Kullanıcı Ayrıntıları"
#: src/pages/core/UserDetail.tsx:206
msgid "Basic user"
msgstr "Temel kullanıcı"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7504,15 +7534,15 @@ msgstr "Yol"
#: src/pages/part/CategoryDetail.tsx:119
msgid "Parent Category"
-msgstr "Üst Sınıf"
+msgstr "Üst Kategori"
#: src/pages/part/CategoryDetail.tsx:142
#: src/pages/part/CategoryDetail.tsx:279
msgid "Subcategories"
-msgstr "Alt sınıflar"
+msgstr "Alt kategoriler"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7528,27 +7558,27 @@ msgstr "Varsayılan konum"
#: src/pages/part/CategoryDetail.tsx:173
msgid "Top level part category"
-msgstr "En üst düzey parça sınıfı"
+msgstr "Üst seviye parça kategorisi"
#: src/pages/part/CategoryDetail.tsx:183
#: src/pages/part/CategoryDetail.tsx:251
#: src/tables/part/PartCategoryTable.tsx:122
msgid "Edit Part Category"
-msgstr "Parça Sınıfını Düzenle"
+msgstr "Parça Kategorisini Düzenle"
#: src/pages/part/CategoryDetail.tsx:192
msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Ögeleri sil"
#: src/pages/part/CategoryDetail.tsx:204
#: src/pages/part/CategoryDetail.tsx:256
msgid "Delete Part Category"
-msgstr "Parça Sınıfını Sil"
+msgstr "Parça Kategorisini Sil"
#: src/pages/part/CategoryDetail.tsx:207
msgid "Parts Action"
@@ -7556,30 +7586,30 @@ msgstr "Parçalar Eylemi"
#: src/pages/part/CategoryDetail.tsx:208
msgid "Action for parts in this category"
-msgstr "Bu sınıftaki parçalar için eylem"
+msgstr "Bu kategorideki parçalar için eylem"
#: src/pages/part/CategoryDetail.tsx:214
msgid "Child Categories Action"
-msgstr "Alt Sınıflar Eylemi"
+msgstr "Alt Kategoriler Eylemi"
#: src/pages/part/CategoryDetail.tsx:215
msgid "Action for child categories in this category"
-msgstr "Bu sınıftaki alt sınıflar için eylem"
+msgstr "Bu kategorinin alt kategorileri için eylem"
#: src/pages/part/CategoryDetail.tsx:247
#: src/tables/part/PartCategoryTable.tsx:143
msgid "Category Actions"
-msgstr "Sınıf Eylemleri"
+msgstr "Kategori Eylemleri"
#: src/pages/part/CategoryDetail.tsx:273
msgid "Category Details"
-msgstr "Sınıf Ayrıntıları"
+msgstr "Kategori Ayrıntıları"
#: src/pages/part/PartAllocationPanel.tsx:21
#: src/pages/stock/StockDetail.tsx:555
#: src/tables/part/PartTable.tsx:121
msgid "Build Order Allocations"
-msgstr "Yapı Siparişi Ayırmaları"
+msgstr "Üretim Emri Tahsisatları"
#: src/pages/part/PartAllocationPanel.tsx:31
#: src/pages/stock/StockDetail.tsx:570
@@ -7595,7 +7625,7 @@ msgstr "ML Doğrula"
#: src/pages/part/PartDetail.tsx:184
msgid "Do you want to validate the bill of materials for this assembly?"
-msgstr "Bu birleştirme için malzeme listesini doğrulamak istiyor musunuz?"
+msgstr "Bu montajın ürün ağacını doğrulamak istiyor musunuz?"
#: src/pages/part/PartDetail.tsx:187
msgid "Bill of materials scheduled for validation"
@@ -7632,7 +7662,7 @@ msgstr ""
#: src/pages/part/PartDetail.tsx:252
msgid "Validated By"
-msgstr "Onaylayan"
+msgstr "Doğrulayan"
#: src/pages/part/PartDetail.tsx:286
#~ msgid "Variant Stock"
@@ -7652,7 +7682,7 @@ msgstr "Onaylayan"
#: src/pages/part/PartDetail.tsx:466
msgid "Variant of"
-msgstr "Şunun bir türü"
+msgstr "Şunun varyantı"
#: src/pages/part/PartDetail.tsx:473
msgid "Revision of"
@@ -7666,7 +7696,7 @@ msgstr "Varsayılan Konum"
#: src/pages/part/PartDetail.tsx:500
msgid "Category Default Location"
-msgstr "Sınıfın Varsayılan Konumu"
+msgstr "Kategorinin Varsayılan Konumu"
#: src/pages/part/PartDetail.tsx:507
msgid "Units"
@@ -7698,15 +7728,15 @@ msgstr "Siparişte"
#: src/pages/part/PartDetail.tsx:555
msgid "Required for Orders"
-msgstr "Siparişler için Gerekli"
+msgstr "Emirler için Gerekli"
#: src/pages/part/PartDetail.tsx:566
msgid "Allocated to Build Orders"
-msgstr "Yapı Siparişlerine Ayrıldı"
+msgstr "Üretim Emirlerine Tahsis Edildi"
#: src/pages/part/PartDetail.tsx:578
msgid "Allocated to Sales Orders"
-msgstr "Satış Siparişlerine Ayrıldı"
+msgstr "Satış Siparişlerine Tahsis Edildi"
#: src/pages/part/PartDetail.tsx:605
msgid "Minimum Stock"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Satılabilir Parça"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7776,119 +7806,119 @@ msgstr "Oluşturan"
#: src/pages/part/PartDetail.tsx:698
msgid "Default Supplier"
-msgstr "Varsayılan Sağlayıcı"
+msgstr "Varsayılan Tedarikçi"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "Varsayılan Son Kullanma Tarihi"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "günler"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Fiyat Aralığı"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "Son Seri Numarası"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Parça Revizyonu Seç"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
-msgstr "Türevler"
+msgstr "Varyantlar"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Ayırmalar"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
-msgstr "Malzeme Listesi"
+msgstr "Ürün Ağacı"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Şunda Kullanıldı"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Parça Fiyatlandırma"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Test Şablonları"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "İlgili Parçalar"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Parça Kilitli"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "Parça kilitli olduğundan bu parçanın parametreleri düzenlenemez"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "Parça kilitli olduğundan bu parçanın parametreleri düzenlenemez"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Gerekli"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Parça Ekle"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Parçayı Sil"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Bu parçanın silinmesi geri alınamaz"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Emir"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "Stok Sipariş Et"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "Seri numarasına göre ara"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Parça Eylemleri"
@@ -7923,7 +7953,7 @@ msgstr "ML Fiyatlandırması"
#: src/pages/part/PartPricingPanel.tsx:129
#: src/pages/part/pricing/PricingOverviewPanel.tsx:249
msgid "Variant Pricing"
-msgstr "Türev Fiyatlandırması"
+msgstr "Varyant Fiyatlandırması"
#: src/pages/part/PartPricingPanel.tsx:141
#: src/pages/part/pricing/PricingOverviewPanel.tsx:258
@@ -8008,8 +8038,8 @@ msgstr "Maksimum Değer"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Maksimum Değer"
msgid "Total Price"
msgstr "Toplam Fiyat"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Bileşen"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Minimum Fiyat"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Maximum Fiyat"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8060,13 +8090,13 @@ msgstr "Maximum Fiyat"
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:84
#: src/tables/stock/StockItemTable.tsx:259
msgid "Unit Price"
-msgstr "Birim Fiyatı"
+msgstr "Birim Fiyat"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Pasta Grafiği"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Çubuk Grafik"
@@ -8075,21 +8105,21 @@ msgstr "Çubuk Grafik"
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:134
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:162
msgid "Add Price Break"
-msgstr "Fiyat Aralığı Ekle"
+msgstr "Fiyat Kademesi Ekle"
#: src/pages/part/pricing/PriceBreakPanel.tsx:71
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:146
msgid "Edit Price Break"
-msgstr "Fiyat Aralığını Düzenle"
+msgstr "Fiyat Kademesini Düzenle"
#: src/pages/part/pricing/PriceBreakPanel.tsx:81
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:154
msgid "Delete Price Break"
-msgstr "Fiyat Aralığını Sil"
+msgstr "Fiyat Kademesini Sil"
#: src/pages/part/pricing/PriceBreakPanel.tsx:95
msgid "Price Break"
-msgstr "Fiyat Aralığı"
+msgstr "Fiyat Kademesi"
#: src/pages/part/pricing/PriceBreakPanel.tsx:171
msgid "Price"
@@ -8113,7 +8143,7 @@ msgstr "Fiyatlandırmayı Düzenle"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:141
msgid "Pricing Category"
-msgstr "Fiyatlandırma Sınıfı"
+msgstr "Fiyatlandırma Kategorisi"
#: src/pages/part/pricing/PricingOverviewPanel.tsx:160
msgid "Minimum"
@@ -8198,12 +8228,12 @@ msgstr "Satış Fiyatı"
#: src/pages/part/pricing/SupplierPricingPanel.tsx:69
#: src/tables/purchasing/SupplierPriceBreakTable.tsx:75
msgid "Supplier Price"
-msgstr "Sağlayıcı Fiyatı"
+msgstr "Tedarikçi Fiyatı"
#: src/pages/part/pricing/VariantPricingPanel.tsx:29
#: src/pages/part/pricing/VariantPricingPanel.tsx:94
msgid "Variant Part"
-msgstr "Türev Parça"
+msgstr "Varyant Parça"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:90
msgid "Edit Purchase Order"
@@ -8217,7 +8247,7 @@ msgstr "Satın Alma Siparişi Ekle"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:148
msgid "Supplier Reference"
-msgstr "Sağlayıcı Referansı"
+msgstr "Tedarikçi Referansı"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:159
#: src/pages/sales/ReturnOrderDetail.tsx:126
@@ -8229,7 +8259,7 @@ msgstr "Sağlayıcı Referansı"
#: src/pages/sales/ReturnOrderDetail.tsx:161
#: src/pages/sales/SalesOrderDetail.tsx:145
msgid "Completed Line Items"
-msgstr "Tamamlanan Satır Ögeleri"
+msgstr "Tamamlanan Satırlar"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:197
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272
@@ -8295,17 +8325,17 @@ msgstr "Sipariş Ayrıntıları"
#: src/pages/sales/SalesOrderDetail.tsx:356
#: src/pages/sales/SalesOrderDetail.tsx:365
msgid "Line Items"
-msgstr "Satır Ögeleri"
+msgstr "Satırlar"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:364
#: src/pages/sales/ReturnOrderDetail.tsx:342
#: src/pages/sales/SalesOrderDetail.tsx:379
msgid "Extra Line Items"
-msgstr "Fazladan Satır Ögeleri"
+msgstr "Ek Kalemler"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:410
msgid "Issue Purchase Order"
-msgstr "Satın Alma Siparişi Ver"
+msgstr "Satın Alma Siparişi Düzenle"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:418
msgid "Cancel Purchase Order"
@@ -8358,7 +8388,7 @@ msgstr "İade Emri Ekle"
#: src/pages/sales/ReturnOrderDetail.tsx:421
msgid "Issue Return Order"
-msgstr "İade Emri Ver"
+msgstr "İade Emri Düzenle"
#: src/pages/sales/ReturnOrderDetail.tsx:429
msgid "Cancel Return Order"
@@ -8398,7 +8428,7 @@ msgstr "Gönderiler"
#: src/pages/sales/SalesOrderDetail.tsx:448
msgid "Issue Sales Order"
-msgstr "Satış Siparişi Ver"
+msgstr "Satış Siparişi Düzenle"
#: src/pages/sales/SalesOrderDetail.tsx:456
msgid "Cancel Sales Order"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Üst Konum"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Alt Konumlar"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Konum Türü"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
-msgstr "En üst düzey stok konumu"
+msgstr "Üst seviye stok konumu"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Konum Ayrıntıları"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Varsayılan Parçalar"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Stok Konumunu Düzenle"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Stok Konumunu Sil"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Ögeler Eylemi"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Bu konumdaki stok ögeleri için eylem"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Stok Konumunu Düzenle"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Stok Konumunu Sil"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Ögeler Eylemi"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Bu konumdaki stok kalemleri için eylem"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Bu konumdaki alt konumlar için eylem"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Konum Eylemleri"
@@ -8677,7 +8707,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:305
msgid "Installed In"
-msgstr "Yüklendiği Yer"
+msgstr "Şuna Takıldı"
#: src/pages/stock/StockDetail.tsx:325
msgid "Parent Item"
@@ -8713,7 +8743,7 @@ msgstr "Stok İzleme"
#: src/pages/stock/StockDetail.tsx:601
msgid "Installed Items"
-msgstr "Yüklenen Ögeler"
+msgstr "Takılı Kalemler"
#: src/pages/stock/StockDetail.tsx:608
msgid "Child Items"
@@ -8721,7 +8751,7 @@ msgstr "Alt Ögeler"
#: src/pages/stock/StockDetail.tsx:661
msgid "Edit Stock Item"
-msgstr "Stok Ögesini Düzenle"
+msgstr "Stok Kalemini Düzenle"
#: src/pages/stock/StockDetail.tsx:671
#: src/tables/stock/StockItemTable.tsx:452
@@ -8748,7 +8778,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:721
msgid "Delete Stock Item"
-msgstr "Stok Ögesini Sil"
+msgstr "Stok Kalemini Sil"
#: src/pages/stock/StockDetail.tsx:762
#~ msgid "Return Stock Item"
@@ -8806,7 +8836,7 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:897
msgid "Stock Item Actions"
-msgstr "Stok Ögesi Eylemleri"
+msgstr "Stok Kalemi Eylemleri"
#: src/pages/stock/StockDetail.tsx:900
#~ msgid "Transfer"
@@ -8845,7 +8875,7 @@ msgstr ""
#: src/tables/ColumnRenderers.tsx:68
msgid "Part is not active"
-msgstr "Parça etkin değil"
+msgstr "Parça aktif değil"
#: src/tables/ColumnRenderers.tsx:78
msgid "You are subscribed to notifications for this part"
@@ -8902,7 +8932,7 @@ msgstr ""
#: src/tables/Filter.tsx:93
msgid "Show items which are in stock"
-msgstr "Stokta olan ögeleri göster"
+msgstr "Stokta olan kalemleri göster"
#: src/tables/Filter.tsx:100
msgid "Is Serialized"
@@ -8917,6 +8947,7 @@ msgstr "Bir seri numarası olan ögeleri göster"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -8951,11 +8982,11 @@ msgstr "Bana atanan siparişleri göster"
#: src/tables/Filter.tsx:144
#: src/tables/sales/SalesOrderAllocationTable.tsx:88
msgid "Outstanding"
-msgstr "Bekliyor"
+msgstr "Açık"
#: src/tables/Filter.tsx:145
msgid "Show outstanding items"
-msgstr ""
+msgstr "Açık kalemleri göster"
#: src/tables/Filter.tsx:153
msgid "Show overdue items"
@@ -9051,7 +9082,7 @@ msgstr ""
#: src/tables/Filter.tsx:264
msgid "Include Variants"
-msgstr "Türevleri İçer"
+msgstr "Varyantları Dahil Et"
#: src/tables/Filter.tsx:265
msgid "Include results for part variants"
@@ -9139,12 +9170,12 @@ msgstr "Filtre Ekle"
msgid "Clear Filters"
msgstr "Süzgeçleri Temizle"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Hiç kayıt bulunamadı"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Sunucu yanlış veri türü döndürdü"
@@ -9176,7 +9207,7 @@ msgstr "Sunucu yanlış veri türü döndürdü"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9302,7 +9333,7 @@ msgstr "Yedek stok içerir"
#: src/tables/build/BuildLineTable.tsx:250
#: src/tables/sales/SalesOrderLineItemTable.tsx:166
msgid "Includes variant stock"
-msgstr "Türev stok içerir"
+msgstr "Varyant stok içerir"
#: src/tables/bom/BomTable.tsx:333
#~ msgid "Bom item updated"
@@ -9315,7 +9346,7 @@ msgstr "Türev stok içerir"
#: src/tables/bom/BomTable.tsx:349
#: src/tables/part/PartTable.tsx:114
msgid "Building"
-msgstr "Yapılıyor"
+msgstr "Üretiliyor"
#: src/tables/bom/BomTable.tsx:349
#~ msgid "Bom item deleted"
@@ -9366,7 +9397,7 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:440
msgid "Show items with available stock"
-msgstr "Kullanılabilir stoku olan ögeleri göster"
+msgstr "Stokta bulunan kalemleri göster"
#: src/tables/bom/BomTable.tsx:445
msgid "Show items on order"
@@ -9378,25 +9409,25 @@ msgstr "Doğrulandı"
#: src/tables/bom/BomTable.tsx:450
msgid "Show validated items"
-msgstr "Doğrulanan ögeleri göster"
+msgstr "Doğrulanan kalemleri göster"
#: src/tables/bom/BomTable.tsx:454
#: src/tables/bom/UsedInTable.tsx:80
msgid "Inherited"
-msgstr "Miras Alındı"
+msgstr "Devralınmış"
#: src/tables/bom/BomTable.tsx:455
#: src/tables/bom/UsedInTable.tsx:81
msgid "Show inherited items"
-msgstr "Miras alınan ögeleri göster"
+msgstr "Devralınmış kalemleri göster"
#: src/tables/bom/BomTable.tsx:459
msgid "Allow Variants"
-msgstr "Türevlere İzin Ver"
+msgstr "Varyantlara İzin Ver"
#: src/tables/bom/BomTable.tsx:460
msgid "Show items which allow variant substitution"
-msgstr "Türev değişimine izin veren ögeleri göster"
+msgstr "Varyant ikamesine izin veren kalemleri göster"
#: src/tables/bom/BomTable.tsx:464
#: src/tables/bom/UsedInTable.tsx:85
@@ -9458,11 +9489,11 @@ msgstr "ML ögesi silindi"
#: src/tables/bom/BomTable.tsx:549
msgid "BOM item validated"
-msgstr "ML ögesi doğrulandı"
+msgstr "BOM kalemi doğrulandı"
#: src/tables/bom/BomTable.tsx:558
msgid "Failed to validate BOM item"
-msgstr "ML ögesi doğrulama başarısız oldu"
+msgstr "BOM kalemini doğrulama başarısız oldu"
#: src/tables/bom/BomTable.tsx:570
msgid "View BOM"
@@ -9470,7 +9501,7 @@ msgstr "ML Görüntüle"
#: src/tables/bom/BomTable.tsx:581
msgid "Validate BOM Line"
-msgstr "ML Satırını Doğrula"
+msgstr "BOM Satırını Doğrula"
#: src/tables/bom/BomTable.tsx:600
msgid "Edit Substitutes"
@@ -9496,7 +9527,7 @@ msgstr ""
#: src/tables/bom/BomTable.tsx:662
msgid "Bill of materials cannot be edited, as the part is locked"
-msgstr "Parça kilitli olduğundan malzeme listesi düzenlenemez"
+msgstr "Parça kilitli olduğundan ürün ağacı düzenlenemez"
#: src/tables/bom/UsedInTable.tsx:34
#: src/tables/build/BuildLineTable.tsx:208
@@ -9509,7 +9540,7 @@ msgstr "Montaj"
#: src/tables/bom/UsedInTable.tsx:91
msgid "Show active assemblies"
-msgstr "Etkin birleştirmeleri göster"
+msgstr "Aktif montajları göster"
#: src/tables/bom/UsedInTable.tsx:95
#: src/tables/part/PartTable.tsx:239
@@ -9523,11 +9554,11 @@ msgstr "İzlenebilir birleştirmeleri göster"
#: src/tables/build/BuildAllocatedStockTable.tsx:64
msgid "Allocated to Output"
-msgstr "Çıktıya Ayrıldı"
+msgstr "Çıktıya Tahsis Edildi"
#: src/tables/build/BuildAllocatedStockTable.tsx:65
msgid "Show items allocated to a build output"
-msgstr "Bir yapı çıktısına ayrılan ögeleri göster"
+msgstr "Bir üretim çıktısına tahsis edilen kalemleri göster"
#: src/tables/build/BuildAllocatedStockTable.tsx:73
#: src/tables/build/BuildOrderTable.tsx:197
@@ -9654,7 +9685,7 @@ msgstr "Mevcut stok yok"
#: src/tables/build/BuildLineTable.tsx:376
msgid "Gets Inherited"
-msgstr "Miras Alınır"
+msgstr "Devralınır"
#: src/tables/build/BuildLineTable.tsx:389
msgid "Unit Quantity"
@@ -9684,7 +9715,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:564
#: src/tables/sales/SalesOrderLineItemTable.tsx:311
msgid "Create Build Order"
-msgstr "Yapım Siparişi Oluştur"
+msgstr "Üretim Emri Oluştur"
#: src/tables/build/BuildLineTable.tsx:593
msgid "Auto allocation in progress"
@@ -9722,7 +9753,7 @@ msgstr ""
#: src/tables/build/BuildLineTable.tsx:778
msgid "Build Stock"
-msgstr "Yapım Stoku"
+msgstr "Üretim Stoku"
#: src/tables/build/BuildLineTable.tsx:791
#: src/tables/sales/SalesOrderLineItemTable.tsx:487
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -9799,7 +9830,7 @@ msgstr ""
#: src/tables/build/BuildOutputTable.tsx:290
#: src/tables/build/BuildOutputTable.tsx:475
msgid "Add Build Output"
-msgstr "Yapım Çıktısı Ekle"
+msgstr "Üretim Çıktısı Ekle"
#: src/tables/build/BuildOutputTable.tsx:293
msgid "Build output created"
@@ -9842,11 +9873,11 @@ msgstr "Seçilen çıktıları iptal et"
#: src/tables/build/BuildOutputTable.tsx:494
msgid "Allocate"
-msgstr "Ayır"
+msgstr "Tahsis Et"
#: src/tables/build/BuildOutputTable.tsx:495
msgid "Allocate stock to build output"
-msgstr "Çıktıyı yapmak için stoku ayır"
+msgstr "Stoku üretim çıktısına tahsis et"
#: src/tables/build/BuildOutputTable.tsx:498
#~ msgid "View Build Output"
@@ -9854,11 +9885,11 @@ msgstr "Çıktıyı yapmak için stoku ayır"
#: src/tables/build/BuildOutputTable.tsx:508
msgid "Deallocate"
-msgstr "İade Et"
+msgstr "Tahsisi Kaldır"
#: src/tables/build/BuildOutputTable.tsx:509
msgid "Deallocate stock from build output"
-msgstr "Yapım çıktısından stoku iade et"
+msgstr "Stokun üretim çıktısına tahsisini kaldır"
#: src/tables/build/BuildOutputTable.tsx:523
msgid "Serialize build output"
@@ -9866,7 +9897,7 @@ msgstr ""
#: src/tables/build/BuildOutputTable.tsx:534
msgid "Complete build output"
-msgstr "Yapım çıktısını tamamla"
+msgstr "Üretim çıktısını tamamla"
#: src/tables/build/BuildOutputTable.tsx:550
msgid "Scrap"
@@ -9874,15 +9905,15 @@ msgstr "Hurdaya Ayır"
#: src/tables/build/BuildOutputTable.tsx:551
msgid "Scrap build output"
-msgstr "Yapım çıktısını hurdaya ayır"
+msgstr "Üretim çıktısını hurdaya ayır"
#: src/tables/build/BuildOutputTable.tsx:561
msgid "Cancel build output"
-msgstr "Yapım çıktısını iptal et"
+msgstr "Üretim çıktısını iptal et"
#: src/tables/build/BuildOutputTable.tsx:610
msgid "Allocated Lines"
-msgstr "Ayrılan Satırlar"
+msgstr "Tahsis Edilen Kalemler"
#: src/tables/build/BuildOutputTable.tsx:625
msgid "Required Tests"
@@ -9928,11 +9959,11 @@ msgstr "Şirket Ekle"
#: src/tables/company/CompanyTable.tsx:92
msgid "Show active companies"
-msgstr "Etkin şirketleri göster"
+msgstr "Aktif şirketleri göster"
#: src/tables/company/CompanyTable.tsx:97
msgid "Show companies which are suppliers"
-msgstr "Sağlayıcı olan şirketleri göster"
+msgstr "Tedarikçi olan şirketleri göster"
#: src/tables/company/CompanyTable.tsx:102
msgid "Show companies which are manufacturers"
@@ -10049,31 +10080,31 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
#: src/tables/sales/SalesOrderLineItemTable.tsx:357
msgid "Add Line Item"
-msgstr "Satır Ögesi Ekle"
+msgstr "Satır Ekle"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
-msgstr "Satır Ögesini Düzenle"
+msgstr "Satırı Düzenle"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
-msgstr "Satır Ögesini Sil"
+msgstr "Satırı Sil"
#: src/tables/general/ExtraLineItemTable.tsx:155
msgid "Add Extra Line Item"
-msgstr "Fazladan Satır Ögesi Ekle"
+msgstr "Ek Kalem Ekle"
#: src/tables/general/ParameterTable.tsx:88
msgid "Internal Units"
@@ -10329,7 +10360,7 @@ msgstr "Makine ekle"
#: src/tables/machine/MachineListTable.tsx:765
msgid "Machine Detail"
-msgstr "Makine Detayı"
+msgstr "Makine Ayrıntısı"
#: src/tables/machine/MachineListTable.tsx:813
msgid "Driver"
@@ -10408,11 +10439,11 @@ msgstr "Yerleşik tür"
#: src/tables/machine/MachineTypeTable.tsx:369
msgid "Machine Type Detail"
-msgstr "Makine Tip Detayları"
+msgstr "Makine Türü Ayrıntısı"
#: src/tables/machine/MachineTypeTable.tsx:379
msgid "Machine Driver Detail"
-msgstr "Makine Sürücü Detayı"
+msgstr "Makine Sürücüsü Ayrıntısı"
#: src/tables/notifications/NotificationTable.tsx:26
msgid "Age"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -10482,19 +10513,19 @@ msgstr "Alt Kategorileri Dahil Et"
#: src/tables/part/PartCategoryTable.tsx:85
msgid "Include subcategories in results"
-msgstr "Sonuçlara alt sınıfları ekle"
+msgstr "Sonuçlara alt kategorileri dahil et"
#: src/tables/part/PartCategoryTable.tsx:90
msgid "Show structural categories"
-msgstr "Yapısal sınıfları göster"
+msgstr "Yapısal kategorileri göster"
#: src/tables/part/PartCategoryTable.tsx:95
msgid "Show categories to which the user is subscribed"
-msgstr "Kullanıcının abone olduğu sınıfları göster"
+msgstr "Kullanıcının takip ettiği kategorileri göster"
#: src/tables/part/PartCategoryTable.tsx:104
msgid "New Part Category"
-msgstr "Yeni Parça Sınıfı"
+msgstr "Yeni Parça Kategorisi"
#: src/tables/part/PartCategoryTable.tsx:130
msgid "Set Parent Category"
@@ -10511,20 +10542,20 @@ msgstr ""
#: src/tables/part/PartCategoryTable.tsx:161
msgid "Add Part Category"
-msgstr "Parça Sınıfı Ekle"
+msgstr "Parça Kategorisi Ekle"
#: src/tables/part/PartCategoryTemplateTable.tsx:49
#: src/tables/part/PartCategoryTemplateTable.tsx:143
msgid "Add Category Parameter"
-msgstr "Sınıf Parametresi Ekle"
+msgstr "Kategori Parametresi Ekle"
#: src/tables/part/PartCategoryTemplateTable.tsx:57
msgid "Edit Category Parameter"
-msgstr "Sınıf Parametresini Düzenle"
+msgstr "Kategori Parametresini Düzenle"
#: src/tables/part/PartCategoryTemplateTable.tsx:65
msgid "Delete Category Parameter"
-msgstr "Sınıf Parametresini Sil"
+msgstr "Kategori Parametresini Sil"
#: src/tables/part/PartCategoryTemplateTable.tsx:93
#~ msgid "[{0}]"
@@ -10558,7 +10589,7 @@ msgstr "Bekleyen siparişleri göster"
#: src/tables/part/PartPurchaseOrdersTable.tsx:128
msgid "Show received items"
-msgstr "Alınan ögeleri göster"
+msgstr "Teslim alınan kalemleri göster"
#: src/tables/part/PartSalesAllocationsTable.tsx:90
#: src/tables/sales/SalesOrderShipmentTable.tsx:263
@@ -10703,7 +10734,7 @@ msgstr "Stokta olan parçalara göre süz"
#: src/tables/part/PartTable.tsx:326
msgid "Filter by parts to which the user is subscribed"
-msgstr "Kullanıcının abone olduğu parçalara göre süz"
+msgstr "Kullanıcının takip ettiği parçalara göre süz"
#: src/tables/part/PartTable.tsx:377
msgid "Import Parts"
@@ -10776,7 +10807,7 @@ msgstr "Sonuç Yok"
#: src/tables/part/PartTestResultTable.tsx:306
msgid "Show build outputs currently in production"
-msgstr "Üretimde olan yapım çıktılarını göster"
+msgstr "Şu an üretimde olan üretim çıktılarını göster"
#: src/tables/part/PartTestTemplateTable.tsx:56
msgid "Test is defined for a parent template part"
@@ -10816,11 +10847,11 @@ msgstr "Bir ek gerektiren testleri göster"
#: src/tables/part/PartTestTemplateTable.tsx:132
msgid "Include Inherited"
-msgstr "Miras Alınanı İçer"
+msgstr "Devralınanı Dahil Et"
#: src/tables/part/PartTestTemplateTable.tsx:133
msgid "Show tests from inherited templates"
-msgstr "Miras alınan şablonlardan olan testleri göster"
+msgstr "Devralınan şablonlardan testleri göster"
#: src/tables/part/PartTestTemplateTable.tsx:137
msgid "Has Results"
@@ -10865,7 +10896,7 @@ msgstr "Seç"
#: src/tables/part/PartVariantTable.tsx:16
msgid "Show active variants"
-msgstr "Etkin türevleri göster"
+msgstr "Aktif varyantları göster"
#: src/tables/part/PartVariantTable.tsx:20
msgid "Template"
@@ -10873,15 +10904,15 @@ msgstr "Şablon"
#: src/tables/part/PartVariantTable.tsx:21
msgid "Show template variants"
-msgstr "Şablon türevlerini göster"
+msgstr "Şablon varyantlarını göster"
#: src/tables/part/PartVariantTable.tsx:26
msgid "Show virtual variants"
-msgstr "Sanal türevleri göster"
+msgstr "Sanal varyantları göster"
#: src/tables/part/PartVariantTable.tsx:31
msgid "Show trackable variants"
-msgstr "İzlenebilir türevleri göster"
+msgstr "İzlenebilir varyantları göster"
#: src/tables/part/RelatedPartTable.tsx:104
#: src/tables/part/RelatedPartTable.tsx:137
@@ -10919,11 +10950,11 @@ msgstr "Hazırla"
#: src/tables/plugin/PluginListTable.tsx:43
msgid "Plugin is active"
-msgstr "Eklenti etkin"
+msgstr "Eklenti aktif"
#: src/tables/plugin/PluginListTable.tsx:49
msgid "Plugin is inactive"
-msgstr "Eklenti etkisiz"
+msgstr "Eklenti pasif"
#: src/tables/plugin/PluginListTable.tsx:56
msgid "Plugin is not installed"
@@ -11129,7 +11160,7 @@ msgstr "Eklenti Ayrıntısı"
#: src/tables/plugin/PluginListTable.tsx:427
msgid "Sample"
-msgstr "Örnek"
+msgstr "Numune"
#: src/tables/plugin/PluginListTable.tsx:432
#: src/tables/stock/StockItemTable.tsx:372
@@ -11162,7 +11193,7 @@ msgstr "ÜPN"
#: src/tables/purchasing/ManufacturerPartTable.tsx:134
#: src/tables/purchasing/SupplierPartTable.tsx:220
msgid "Active Part"
-msgstr "Etkin Parça"
+msgstr "Aktif Parça"
#: src/tables/purchasing/ManufacturerPartParametricTable.tsx:45
#: src/tables/purchasing/ManufacturerPartTable.tsx:135
@@ -11196,17 +11227,17 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
-msgstr "İçe Satır Ögeleri Aktar"
+msgstr "Satırları İçe Aktar"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:237
msgid "Supplier Code"
-msgstr "Sağlayıcı Kodu"
+msgstr "Tedarikçi Kodu"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:244
msgid "Supplier Link"
-msgstr "Sağlayıcı Bağlantısı"
+msgstr "Tedarikçi Bağlantısı"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:251
msgid "Manufacturer Code"
@@ -11222,13 +11253,13 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
-msgstr "Satır ögesini teslim al"
+msgstr "Sipariş kalemini teslim al"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
-msgstr "Ögeleri teslim al"
+msgstr "Sipariş kalemlerini teslim al"
#: src/tables/purchasing/SupplierPartTable.tsx:129
msgid "Base units"
@@ -11236,7 +11267,7 @@ msgstr "Temel birimler"
#: src/tables/purchasing/SupplierPartTable.tsx:192
msgid "Add supplier part"
-msgstr "Sağlayıcı parçası ekle"
+msgstr "Tedarikçi parçası ekle"
#: src/tables/purchasing/SupplierPartTable.tsx:193
#~ msgid "Supplier part updated"
@@ -11256,19 +11287,19 @@ msgstr ""
#: src/tables/purchasing/SupplierPartTable.tsx:216
msgid "Show active supplier parts"
-msgstr "Etkin sağlayıcı parçalarını göster"
+msgstr "Aktif tedarikçi parçalarını göster"
#: src/tables/purchasing/SupplierPartTable.tsx:221
msgid "Show active internal parts"
-msgstr "Etkin dahili parçaları göster"
+msgstr "Aktif dahili parçaları göster"
#: src/tables/purchasing/SupplierPartTable.tsx:225
msgid "Active Supplier"
-msgstr "Etkin Sağlayıcı"
+msgstr "Aktif Tedarikçi"
#: src/tables/purchasing/SupplierPartTable.tsx:226
msgid "Show active suppliers"
-msgstr "Etkin sağlayıcıları göster"
+msgstr "Aktif tedarikçileri göster"
#: src/tables/purchasing/SupplierPartTable.tsx:231
msgid "Show supplier parts with stock"
@@ -11284,7 +11315,7 @@ msgstr "Teslim alınan ögeleri göster"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:177
msgid "Filter by line item status"
-msgstr "Satır ögesi durumuna göre süz"
+msgstr "Satır durumuna göre filtrele"
#: src/tables/sales/ReturnOrderLineItemTable.tsx:195
msgid "Receive selected items"
@@ -11296,7 +11327,7 @@ msgstr "Ögeyi Teslim Al"
#: src/tables/sales/SalesOrderAllocationTable.tsx:89
msgid "Show outstanding allocations"
-msgstr ""
+msgstr "Açık tahsisatları göster"
#: src/tables/sales/SalesOrderAllocationTable.tsx:93
msgid "Assigned to Shipment"
@@ -11312,7 +11343,7 @@ msgstr "Mevcut Miktar"
#: src/tables/sales/SalesOrderAllocationTable.tsx:163
msgid "Allocated Quantity"
-msgstr "Ayrılan Miktar"
+msgstr "Tahsis Edilen Miktar"
#: src/tables/sales/SalesOrderAllocationTable.tsx:177
#: src/tables/sales/SalesOrderAllocationTable.tsx:191
@@ -11372,7 +11403,7 @@ msgstr ""
#: src/tables/sales/SalesOrderLineItemTable.tsx:439
msgid "Build stock"
-msgstr "Yapım stoku"
+msgstr "Üretim stoku"
#: src/tables/sales/SalesOrderLineItemTable.tsx:457
msgid "Order stock"
@@ -11658,7 +11689,7 @@ msgstr "Görev"
#: src/tables/settings/FailedTasksTable.tsx:38
#: src/tables/settings/PendingTasksTable.tsx:33
msgid "Task ID"
-msgstr "Görev Kimliği"
+msgstr "Görev ID"
#: src/tables/settings/FailedTasksTable.tsx:42
#: src/tables/stock/StockItemTestResultTable.tsx:233
@@ -11888,11 +11919,11 @@ msgstr "Kullanıcı bilgileri alınırken bir hata oluştu"
#: src/tables/settings/UserTable.tsx:178
msgid "Is Active"
-msgstr "Etkin Olanlar"
+msgstr "Aktif mi"
#: src/tables/settings/UserTable.tsx:179
msgid "Designates whether this user should be treated as active. Unselect this instead of deleting accounts."
-msgstr "Bu kullanıcının etkin olarak değerlendirilip değerlendirilmeyeceğini belirtir. Hesapları silmek yerine bunun seçimini kaldırın."
+msgstr "Bu kullanıcının aktif olarak değerlendirilip değerlendirilmeyeceğini belirtir. Hesapları silmek yerine bunun seçimini kaldırın."
#: src/tables/settings/UserTable.tsx:183
msgid "Is Staff"
@@ -11956,7 +11987,7 @@ msgstr "Kullanıcı ekle"
#: src/tables/settings/UserTable.tsx:401
msgid "Show active users"
-msgstr "Etkin kullanıcıları göster"
+msgstr "Aktif kullanıcıları göster"
#: src/tables/settings/UserTable.tsx:406
msgid "Show staff users"
@@ -12030,23 +12061,23 @@ msgstr "Simge"
#: src/tables/stock/StockItemTable.tsx:106
msgid "This stock item is in production"
-msgstr "Bu stok ögesi üretimdedir"
+msgstr "Bu stok kalemi üretimdedir"
#: src/tables/stock/StockItemTable.tsx:113
msgid "This stock item has been assigned to a sales order"
-msgstr "Bu stok ögesi bir satış siparişine atandı"
+msgstr "Bu stok kalemi bir satış siparişine atanmıştır"
#: src/tables/stock/StockItemTable.tsx:120
msgid "This stock item has been assigned to a customer"
-msgstr "Bu stok ögesi bir müşteriye atanmıştır"
+msgstr "Bu stok kalemi bir müşteriye atanmıştır"
#: src/tables/stock/StockItemTable.tsx:127
msgid "This stock item is installed in another stock item"
-msgstr "Bu stok ögesi başka bir stok ögesinde kuruludur"
+msgstr "Bu stok kalemi başka bir stok kalemine takılıdır"
#: src/tables/stock/StockItemTable.tsx:134
msgid "This stock item has been consumed by a build order"
-msgstr "Bu stok ögesi bir yapım siparişi tarafından tüketildi"
+msgstr "Bu stok kalemi bir üretim emri tarafından tüketildi"
#: src/tables/stock/StockItemTable.tsx:141
msgid "This stock item is unavailable"
@@ -12054,23 +12085,23 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:150
msgid "This stock item has expired"
-msgstr "Bu stok ögesinin süresi doldu"
+msgstr "Bu stok kaleminin süresi doldu"
#: src/tables/stock/StockItemTable.tsx:154
msgid "This stock item is stale"
-msgstr "Bu stok ögesi eski"
+msgstr "Bu stok kalemi eskidir"
#: src/tables/stock/StockItemTable.tsx:166
msgid "This stock item is fully allocated"
-msgstr "Bu stok ögesi tümüyle ayrıldı"
+msgstr "Bu stok kalemi tümüyle tahsis edildi"
#: src/tables/stock/StockItemTable.tsx:173
msgid "This stock item is partially allocated"
-msgstr "Bu stok ögesi kısmen ayrıldı"
+msgstr "Bu stok kalemi kısmen tahsis edildi"
#: src/tables/stock/StockItemTable.tsx:201
msgid "This stock item has been depleted"
-msgstr "Bu stok ögesi tükendi"
+msgstr "Bu stok kalemi tükendi"
#: src/tables/stock/StockItemTable.tsx:301
#~ msgid "Show stock for assmebled parts"
@@ -12090,7 +12121,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:339
msgid "Show items which have been allocated"
-msgstr "Ayrılan ögeleri göster"
+msgstr "Tahsis edilen kalemleri göster"
#: src/tables/stock/StockItemTable.tsx:344
msgid "Show items which are available"
@@ -12099,11 +12130,11 @@ msgstr "Stokta olan ögeleri göster"
#: src/tables/stock/StockItemTable.tsx:348
#: src/tables/stock/StockLocationTable.tsx:38
msgid "Include Sublocations"
-msgstr "Alt Konumları İçer"
+msgstr "Alt Konumları Dahil Et"
#: src/tables/stock/StockItemTable.tsx:349
msgid "Include stock in sublocations"
-msgstr "Alt konumlardaki stoku içer"
+msgstr "Alt konumlardaki stoku dahil et"
#: src/tables/stock/StockItemTable.tsx:353
msgid "Depleted"
@@ -12111,7 +12142,7 @@ msgstr "Tükendi"
#: src/tables/stock/StockItemTable.tsx:354
msgid "Show depleted stock items"
-msgstr "Tükenen stok ögelerini göster"
+msgstr "Tükenen stok kalemlerini göster"
#: src/tables/stock/StockItemTable.tsx:360
msgid "Show items which are in production"
@@ -12127,7 +12158,7 @@ msgstr ""
#: src/tables/stock/StockItemTable.tsx:373
msgid "Show stock items which are installed in other items"
-msgstr "Başka ögelerde kurulu olan stok ögelerini göster"
+msgstr "Başka kalemlerde takılı olan stok kalemlerini göster"
#: src/tables/stock/StockItemTable.tsx:377
msgid "Sent to Customer"
@@ -12279,7 +12310,7 @@ msgstr "Test"
#: src/tables/stock/StockItemTestResultTable.tsx:180
msgid "Test result for installed stock item"
-msgstr "Kurulan stok ögeleri için test sonucunu göster"
+msgstr "Takılı stok kaleminin test sonucu"
#: src/tables/stock/StockItemTestResultTable.tsx:211
msgid "Attachment"
@@ -12333,11 +12364,11 @@ msgstr "İstenen testler için sonuçları göster"
#: src/tables/stock/StockItemTestResultTable.tsx:409
msgid "Include Installed"
-msgstr "Kurulanı İçer"
+msgstr "Takılıyı Dahil Et"
#: src/tables/stock/StockItemTestResultTable.tsx:410
msgid "Show results for installed stock items"
-msgstr "Kurulan stok ögeleri için sonuçları göster"
+msgstr "Takılı stok kalemleri için sonuçları göster"
#: src/tables/stock/StockItemTestResultTable.tsx:414
msgid "Passed"
@@ -12357,7 +12388,7 @@ msgstr ""
#: src/tables/stock/StockLocationTable.tsx:39
msgid "Include sublocations in results"
-msgstr "Sonuçlarda alt konumları içer"
+msgstr "Sonuçlarda alt konumları dahil et"
#: src/tables/stock/StockLocationTable.tsx:43
#~ msgid "external"
diff --git a/src/frontend/src/locales/uk/messages.po b/src/frontend/src/locales/uk/messages.po
index b9926354ca..90100a6b9d 100644
--- a/src/frontend/src/locales/uk/messages.po
+++ b/src/frontend/src/locales/uk/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: uk\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Ukrainian\n"
"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n"
@@ -46,9 +46,9 @@ msgstr "Видалити"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Скасувати"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Дії"
@@ -73,7 +73,7 @@ msgstr "Дії"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Пошук"
@@ -97,12 +97,12 @@ msgstr "Ні"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Ні"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Частина"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Частини"
@@ -149,14 +150,14 @@ msgstr "Частини"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "Параметр"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Параметри"
@@ -168,7 +169,7 @@ msgstr "Шаблон параметра"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "Шаблони параметрів"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "Категорія"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Категорії"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Елемент складу"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "У наявності"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Розташування складу"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Розташування складу"
@@ -267,7 +268,7 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr ""
@@ -340,14 +341,14 @@ msgstr "Замовлення на купівлю"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
-msgstr ""
+msgstr "Закупівлі"
#: lib/enums/ModelInformation.tsx:169
msgid "Purchase Order Line"
@@ -373,10 +374,10 @@ msgstr "Замовлення на купівлю"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr ""
@@ -398,10 +399,10 @@ msgstr ""
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr ""
@@ -546,23 +547,23 @@ msgstr ""
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Адмін"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Замовлення на збірку"
@@ -597,11 +598,11 @@ msgstr "Замовлення на збірку"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Помилка рендерингу компонента"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Сталася помилка під час рендерингу цього компонента. Передивитись в консоль для отримання додаткової інформації."
@@ -637,7 +638,7 @@ msgstr "Штрих-код"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Сканувати"
@@ -798,12 +799,12 @@ msgstr "Друк звітів"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "Друк етикетки"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "Друк"
@@ -819,19 +820,19 @@ msgstr "Друк"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "Надрукувати звіт"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Дії друку"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "Друк етикеток"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "Друк звітів"
@@ -860,8 +861,8 @@ msgstr "Вас буде перенаправлено до постачальни
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Відкрити сканер штрих-кодів"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "Прийняти макет сторінки"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -957,7 +958,7 @@ msgstr "Видалити віджети"
#: src/components/dashboard/DashboardMenu.tsx:129
msgid "Clear Widgets"
-msgstr ""
+msgstr "Очистити віджети"
#: src/components/dashboard/DashboardWidget.tsx:81
msgid "Remove this widget from the dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Видалити пов'язане зображення з цього е
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Очистити"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Відправити"
@@ -1579,21 +1580,21 @@ msgstr "Вхід успішно виконано"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Не вдалося увійти"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Перевірте введені дані та повторіть спробу."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Пошту відправлено"
@@ -1628,7 +1629,7 @@ msgstr "Ваше ім’я користувача"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Пароль"
@@ -1732,7 +1733,7 @@ msgstr "Хост"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Версія API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "Значки {0}"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Завантаження"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr ""
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr ""
@@ -2002,31 +2004,31 @@ msgstr ""
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr ""
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Опис поля"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Імпортований стовпець"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Значення за замовчуванням"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Стовпці мапи"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Імпорт даних"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Дані успішно імпортовано"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Закрити"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr ""
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Документація"
@@ -2547,7 +2553,7 @@ msgstr "Налаштування"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Налаштування системи"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Центр адміністрування"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Вихід"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr ""
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Неактивний"
@@ -3001,7 +3007,7 @@ msgstr "Немає в наявності"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr ""
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Категорія"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Категорія"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr ""
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Серійний номер"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Серійний номер"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Кількість"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "Пакетно"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Змінити налаштування"
@@ -3206,32 +3219,32 @@ msgstr "Змінити налаштування"
msgid "Setting {key} updated successfully"
msgstr "Налаштування {key} успішно оновлено"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Налаштування оновлено"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Налаштування {0} успішно оновлено"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr ""
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Параметри не вказані"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr ""
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Перейти до панелі керування InvenTree"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr ""
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr ""
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Інформація про сервер"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Відомості про ліцензію"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr ""
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr ""
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr ""
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr ""
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Статус"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr ""
@@ -4428,24 +4445,24 @@ msgstr ""
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr ""
@@ -4453,24 +4470,24 @@ msgstr ""
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr ""
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr ""
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr ""
msgid "IPN"
msgstr ""
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Розташування джерела"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "Вибір розташування вихідного товару при розподілі запасів"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "Вибір розташування вихідного товару пр
msgid "Allocate Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "Елементи складу виділені"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "Елементи складу виділені"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "Ви підписані"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr ""
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr ""
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr "Кількість"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Додати запаси"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "Додано елемент складу"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Видалити елемент складу"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "Видалено елемент складу"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Переміщення запасів"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Кількість запасів"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr ""
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr ""
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr "Внутрішня помилка сервера"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "Вхід вже здійснено"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
msgstr ""
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr ""
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr ""
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Перевірте вашу поштову скриньку для скидання посилання. Це працює тільки в тому випадку, якщо у вас є обліковий запис. Перевірити також спам."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr ""
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "Вхід вже здійснено"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr ""
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr ""
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr ""
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Пароль успішно встановлено. Тепер ви можете увійти в систему, використовуючи новий пароль"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Дії над запасами"
@@ -5383,12 +5411,12 @@ msgstr "Не маєте облікового запису?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,60 +6238,56 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Наступні електронні адреси пов'язані з вашим обліковим записом:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
-msgid "Re-send Verification"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
+msgid "Re-send Verification"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr ""
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Дочірні Замовлення на збірку"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Зовнішнє посилання"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr ""
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr ""
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr ""
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Підкатегорії"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Видалити елемент"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr ""
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr ""
msgid "Default Supplier"
msgstr "Типовий постачальник"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr ""
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr ""
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr ""
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr ""
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr ""
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Використано у"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Ціна елементу"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr ""
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr ""
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr ""
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Необхідний"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Видалити деталь"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Видалення цього елементу не може бути скасовано"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "Замовлення"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr ""
@@ -8008,8 +8038,8 @@ msgstr "Максимальне значення"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Максимальне значення"
msgid "Total Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Компонент"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr ""
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr ""
msgid "Unit Price"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr ""
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr ""
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Тип локації"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Видалити місце складу"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Дія для товарів в цьому розташуванні"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Видалити місце складу"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Дія для товарів в цьому розташуванні"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Дія для розміщення дочірніх місць у цієї локації"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr ""
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr ""
msgid "Clear Filters"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr ""
@@ -9176,7 +9207,7 @@ msgstr ""
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr "Показувати замовлення з датою початку"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr ""
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr ""
diff --git a/src/frontend/src/locales/vi/messages.po b/src/frontend/src/locales/vi/messages.po
index 1ce986688e..5a903b09a3 100644
--- a/src/frontend/src/locales/vi/messages.po
+++ b/src/frontend/src/locales/vi/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: vi\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:58\n"
"Last-Translator: \n"
"Language-Team: Vietnamese\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr "Xóa"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "Hủy bỏ"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "Chức năng"
@@ -73,7 +73,7 @@ msgstr "Chức năng"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "Tìm kiếm"
@@ -97,12 +97,12 @@ msgstr "Không"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "Không"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "Phụ kiện"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "Phụ tùng"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "Thông số"
@@ -218,14 +219,14 @@ msgstr "Danh mục phụ kiện"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "Danh mục phụ kiện"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "Hàng trong kho"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "Hàng trong kho"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "Vị trí kho hàng"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "Vị trí kho hàng"
@@ -267,7 +268,7 @@ msgstr "Phân loại vị trí kho hàng"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "Lịch sử kho hàng"
@@ -340,11 +341,11 @@ msgstr "Đơn đặt mua"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "Đơn hàng mua"
@@ -373,10 +374,10 @@ msgstr "Đơn đặt bán"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "Đơn hàng bán"
@@ -398,10 +399,10 @@ msgstr "Đơn hàng trả lại"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "Đơn hàng trả lại"
@@ -546,23 +547,23 @@ msgstr "Danh sách chọn"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "Quản trị"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "Đơn đặt bản dựng"
@@ -597,11 +598,11 @@ msgstr "Đơn đặt bản dựng"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "Lỗi khi hiển thị thành phần"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "Một lỗi đã xảy ra trong quá trình hiển thị thành phần này. Vui lòng tham khảo bảng điều khiển để biết thêm thông tin."
@@ -637,7 +638,7 @@ msgstr "Mã vạch"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "Quét"
@@ -798,12 +799,12 @@ msgstr "In báo cáo"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "In nhãn"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "In"
@@ -819,19 +820,19 @@ msgstr "In"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "In báo cáo"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "Các hành động in"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "In nhãn"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "In báo cáo"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "Mở máy quét mã vạch"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "Xóa hình liên quan khỏi mục này?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "Clear"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "Gửi"
@@ -1579,21 +1580,21 @@ msgstr "Đăng nhập thành công"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "Đăng nhập thất bại"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "Kiểm tra đầu vào của bạn và thử lại."
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "Thư đã được gửi đi thành công"
@@ -1628,7 +1629,7 @@ msgstr "Tên người dùng của bạn"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "Mật khẩu"
@@ -1732,7 +1733,7 @@ msgstr "Host"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "Phiên bản API"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} icons"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "Đang tải"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "Đang xử lý dữ liệu"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "Có lỗi xảy ra"
@@ -2002,31 +2004,31 @@ msgstr "Chọn cột hoặc để trống để bỏ qua trường này."
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "Bỏ qua trường này"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "Đang ánh xạ các cột vào các trường cơ sở dữ liệu"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "Chấp nhận ánh xạ cột"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "Trường cơ sở dữ liệu"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "Mô tả trường"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "Cột nhập khẩu"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "Giá trị mặc định"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "Ánh xạ cột"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "Nhập dữ liệu"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "Dữ liệu đã được nhập thành công"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "Đóng"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "Liên kết"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "Tài liệu"
@@ -2547,7 +2553,7 @@ msgstr "Cài đặt"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "Thiết lập hệ thống"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "Trung tâm quản trị"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "Đăng xuất"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "Lô hàng"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "Không hoạt động"
@@ -3001,7 +3007,7 @@ msgstr "Hết hàng"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "On Order"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "Danh mục"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "Danh mục"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "Vị trí"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "Số sê-ri"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "Số sê-ri"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "Số lượng"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr ""
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "Sửa thiết lập"
@@ -3206,32 +3219,32 @@ msgstr "Sửa thiết lập"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "Cài đặt đã được cập nhật"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "Cấu hình {0} được cập nhật thành công"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "Lỗi sửa thiết lập"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "Không có cấu hình cụ thể"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "Sửa phụ kiện"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "Về dasboard"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "Truy cập tài liệu để tìm hiểu thêm về InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "Giới thiệu InvenTree org"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "Thông tin máy chủ"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "Thông tin giấy phép"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "Giấy phép dịch vụ phụ thuộc"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "Mở điều hướng"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "Mở menu điều hướng chính"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "Đi đến Trung tâm quản trị"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr ""
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "Trạng thái"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "Hoàn thành xây dựng đầu ra"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "Xây dựng đầu ra đã hoàn thành"
@@ -4428,24 +4445,24 @@ msgstr "Xây dựng đầu ra đã hoàn thành"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "Loại bỏ xây dựng đầu ra"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "Xây dựng đầu ra đã bị hủy bỏ"
@@ -4453,24 +4470,24 @@ msgstr "Xây dựng đầu ra đã bị hủy bỏ"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "Loại bỏ xây dựng đầu ra"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "Xây dựng đầu ra đã bị hủy"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "Xây dựng đầu ra đã bị hủy"
msgid "IPN"
msgstr "IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "Vị trí nguồn cung"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr ""
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,37 +4542,37 @@ msgstr ""
msgid "Allocate Stock"
msgstr "Phân kho"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr ""
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
-#: src/tables/build/BuildAllocatedStockTable.tsx:243
-#: src/tables/build/BuildAllocatedStockTable.tsx:279
-#: src/tables/build/BuildLineTable.tsx:748
-#: src/tables/build/BuildLineTable.tsx:871
-msgid "Consume Stock"
-msgstr ""
-
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-msgid "Stock items scheduled to be consumed"
-msgstr ""
-
#: src/forms/BuildForms.tsx:817
#: src/forms/BuildForms.tsx:918
#~ msgid "Stock items consumed"
#~ msgstr "Stock items consumed"
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
+#: src/tables/build/BuildAllocatedStockTable.tsx:243
+#: src/tables/build/BuildAllocatedStockTable.tsx:279
+#: src/tables/build/BuildLineTable.tsx:748
+#: src/tables/build/BuildLineTable.tsx:871
+msgid "Consume Stock"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
+msgid "Stock items scheduled to be consumed"
+msgstr ""
+
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr ""
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "Danh mục phụ kiện cha"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr "Cửa hàng đã nhận hàng"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr ""
msgid "Count"
msgstr "Đếm"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "Thêm kho"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "Xoá kho"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "Chuyển kho"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "Kiểm kê"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "Đổi trạng thái kho"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "Gộp kho"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "Xóa mặt hàng trong kho"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "Vị trí kho lớn"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "Đã đăng xuất"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "Đã đăng xuất"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "Đăng xuất thành công"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "Kiểm tra hộp thư để lấy liên kết đặt lại. Việc này chỉ có tác dụng khi bạn có tài khoản. Cần kiểm tra thư mục Spam/Junk."
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "Thiết lập lại thất bại"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "Đã đăng nhập"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "Đăng nhập thành công."
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "Đã đặt mật khẩu"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "Mật khẩu đã được đặt mới thành công. Bạn có thể đăng nhập bằng mật khẩu mới"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr ""
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "Thao tác kho"
@@ -5383,12 +5411,12 @@ msgstr "Chưa có tài khoản?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "Không kích hoạt"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "Không kích hoạt"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "Địa chỉ email sau đã được liên kết với tài khoản của bạn:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "Chính"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "Đã xác minh"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "Chưa xác minh"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "Chọn mặc định"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "Gửi lại xác minh"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "Thêm địa chỉ email"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "Email"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "Địa chỉ Email"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "Thêm địa chỉ email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "Email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "Địa chỉ Email"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "Thêm email"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "Thêm email"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "Đơn đặt bản dựng con"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "Liên kết Ngoài"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "Chi tiết"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "Thêm sản phẩm nhà cung cấp"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "Hết hàng"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "Phụ mục"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "Xoá"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "Có thể bán"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "Tạo bởi"
msgid "Default Supplier"
msgstr "Nhà cung ứng mặc định"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "Khoảng giá"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "Chọn lịch sử nguyên liệu"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "Biến thể"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "Phân bổ"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "Hóa đơn nguyên vật liệu"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "Sử dụng trong"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "Giá"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "Mẫu thử nghiệm"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "Phụ kiện liên quan"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "Nguyên liệu bị khoá"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr ""
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr ""
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "Bắt buộc"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "Thêm nguyên liệu"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "Xoá nguyên liệu"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "Không thể khôi phục việc xóa nguyên liệu này"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "Thao tác"
@@ -8008,8 +8038,8 @@ msgstr "Giá trị tối đa"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "Giá trị tối đa"
msgid "Total Price"
msgstr "Tổng tiền"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "Thành phần"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "Giá thấp nhất"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "Giá cao nhất"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "Giá cao nhất"
msgid "Unit Price"
msgstr "Đơn giá"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "Biểu đồ tròn"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "Biểu đồ cột"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "Địa chỉ chính"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "Địa chỉ phụ"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "Loại vị trí"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "Vị trí kho tổng"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "Chi tiết địa điểm"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "Nguyên liệu mặc định"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "Sửa vị trí kho"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "Xoá vị trí kho"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "Thao tác items"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "Thao tác cho kho tại vị trí này"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "Sửa vị trí kho"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "Xoá vị trí kho"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "Thao tác items"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "Thao tác cho kho tại vị trí này"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "Thao tác cho vị trí phụ tại vị trí này"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "Thao tác vị trí"
@@ -8917,6 +8947,7 @@ msgstr ""
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "Thêm bộ lọc"
msgid "Clear Filters"
msgstr "Xóa bộ lọc"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "Không tìm thấy biểu ghi"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "Máy chủ trả chưa đúng dữ liệu"
@@ -9176,7 +9207,7 @@ msgstr "Máy chủ trả chưa đúng dữ liệu"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "Thêm hạng mục"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "Sửa hạng mục"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr ""
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "Nhận hạng mục"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "Nhận hàng hóa"
diff --git a/src/frontend/src/locales/zh_Hans/messages.po b/src/frontend/src/locales/zh_Hans/messages.po
index 37e479fd47..40fea893a0 100644
--- a/src/frontend/src/locales/zh_Hans/messages.po
+++ b/src/frontend/src/locales/zh_Hans/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: zh\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Chinese Simplified\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr "删除"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "取消"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "操作"
@@ -73,7 +73,7 @@ msgstr "操作"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "搜索"
@@ -97,12 +97,12 @@ msgstr "否"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "否"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "零件"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "零件"
@@ -149,14 +150,14 @@ msgstr "零件"
#: lib/enums/ModelInformation.tsx:39
msgid "Parameter"
-msgstr ""
+msgstr "参数"
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "参数"
@@ -168,7 +169,7 @@ msgstr "参数模板"
#: lib/enums/ModelInformation.tsx:46
#: src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx:13
msgid "Parameter Templates"
-msgstr ""
+msgstr "参数模板"
#: lib/enums/ModelInformation.tsx:52
msgid "Part Test Template"
@@ -218,14 +219,14 @@ msgstr "零件类别"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "零件类别"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "库存项"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "库存项"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "库存地点"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "库存地点"
@@ -267,7 +268,7 @@ msgstr "库存地点类型"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "库存历史记录"
@@ -340,11 +341,11 @@ msgstr "采购订单"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "采购订单"
@@ -373,10 +374,10 @@ msgstr "销售订单"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "销售订单"
@@ -398,10 +399,10 @@ msgstr "退货订单"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "退货订单"
@@ -546,23 +547,23 @@ msgstr "选择列表"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "管理员"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "生产订单"
@@ -597,11 +598,11 @@ msgstr "生产订单"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "渲染组件出错"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "渲染此组件时发生错误。请参阅控制台获取更多信息。"
@@ -637,7 +638,7 @@ msgstr "条形码"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "扫描"
@@ -798,12 +799,12 @@ msgstr "打印报表"
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "打印标签"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "打印"
@@ -819,19 +820,19 @@ msgstr "打印"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "打印报告"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "打印操作"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "打印标签"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "打印报告"
@@ -860,8 +861,8 @@ msgstr "您将被重定向到提供商进行进一步操作。"
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr "打开条形码扫描器"
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr "接受布局"
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "删除与此项关联的图片?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "清除"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "提交"
@@ -1579,21 +1580,21 @@ msgstr "登录成功"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "登录失败"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "请检查您的输入并重试。"
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "邮件发送成功"
@@ -1628,7 +1629,7 @@ msgstr "你的用户名"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "密码"
@@ -1732,7 +1733,7 @@ msgstr "主机"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API 版本"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} 个图标"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "正在加载"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "处理数据中"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "发生错误"
@@ -2002,31 +2004,31 @@ msgstr "选择列,或留空忽略此字段。"
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "忽略该字段"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "将数据列映射到数据库字段"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "接受列映射"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "数据库字段"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "字段描述"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "导入列"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "默认值"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "映射列"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "导入数据"
+msgid "Import Rows"
+msgstr "导入行"
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "数据已成功导入"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "关闭"
@@ -2208,7 +2214,7 @@ msgstr "正在更新组角色"
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr "角色"
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr "视图"
@@ -2255,10 +2261,10 @@ msgstr "没有项目"
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "链接"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "文档"
@@ -2479,7 +2485,7 @@ msgstr "警报"
#: src/components/nav/Alerts.tsx:97
msgid "No issues detected"
-msgstr ""
+msgstr "未发现问题"
#: src/components/nav/Alerts.tsx:122
msgid "The server is running in debug mode."
@@ -2547,7 +2553,7 @@ msgstr "设置"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr "用户设置"
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "系统设置"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "管理中心"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "登出"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr "移除搜索组"
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr "插件信息"
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "配送"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "未激活"
@@ -3001,7 +3007,7 @@ msgstr "无库存"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "订购中"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "类别"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "类别"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "位置"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "序列号"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "序列号"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "数量"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "批次"
@@ -3143,7 +3148,7 @@ msgstr "添加状态"
#: src/components/settings/QuickAction.tsx:85
msgid "Open an Issue"
-msgstr "开启问题"
+msgstr "查看问题"
#: src/components/settings/QuickAction.tsx:86
msgid "Report a bug or request a feature on GitHub"
@@ -3151,19 +3156,19 @@ msgstr "在GitHub上报告错误或请求功能"
#: src/components/settings/QuickAction.tsx:88
msgid "Open Issue"
-msgstr ""
+msgstr "查看问题"
#: src/components/settings/QuickAction.tsx:97
msgid "Add New Group"
-msgstr ""
+msgstr "添加新组"
#: src/components/settings/QuickAction.tsx:98
msgid "Create a new group to manage your users"
-msgstr ""
+msgstr "创建一个新的组来管理您的用户"
#: src/components/settings/QuickAction.tsx:100
msgid "New Group"
-msgstr ""
+msgstr "新组"
#: src/components/settings/QuickAction.tsx:105
msgid "Add New User"
@@ -3171,33 +3176,41 @@ msgstr "添加新用户"
#: src/components/settings/QuickAction.tsx:106
msgid "Create a new user to manage your groups"
-msgstr ""
+msgstr "创建一个新用户来管理您的组"
#: src/components/settings/QuickAction.tsx:108
msgid "New User"
-msgstr ""
+msgstr "新用户"
#: src/components/settings/QuickAction.tsx:114
msgid "Create a new project code to organize your items"
-msgstr ""
+msgstr "创建一个新的项目编码来管理您的项目"
#: src/components/settings/QuickAction.tsx:116
msgid "Add Code"
-msgstr ""
+msgstr "添加编码"
#: src/components/settings/QuickAction.tsx:121
msgid "Add Custom State"
-msgstr ""
+msgstr "添加自定义状态"
#: src/components/settings/QuickAction.tsx:122
msgid "Create a new custom state for your workflow"
-msgstr ""
+msgstr "为您的工作流程创建一个新的自定义状态"
+
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr "您想继续更改此设置吗?"
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr "此设置需要确认"
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "编辑设置"
@@ -3206,32 +3219,32 @@ msgstr "编辑设置"
msgid "Setting {key} updated successfully"
msgstr "设置{key}更新成功"
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "设置已更新"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "成功更新设置{0}"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "编辑设置时出错"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr "设置加载错误"
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr "无设置项"
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr "当前无可配置设置"
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "未指定设置"
@@ -3593,15 +3606,15 @@ msgstr "未指定设置"
#: src/components/wizards/ImportPartWizard.tsx:105
msgid "Exact Match"
-msgstr ""
+msgstr "完全匹配"
#: src/components/wizards/ImportPartWizard.tsx:112
msgid "Current part"
-msgstr ""
+msgstr "当前的零件"
#: src/components/wizards/ImportPartWizard.tsx:118
msgid "Already Imported"
-msgstr ""
+msgstr "已经载入"
#: src/components/wizards/ImportPartWizard.tsx:205
#: src/pages/company/CompanyDetail.tsx:137
@@ -3626,7 +3639,7 @@ msgstr "正在加载..."
#: src/components/wizards/ImportPartWizard.tsx:223
msgid "Error fetching suppliers"
-msgstr "获取供应商出错"
+msgstr "获取供应商时出错"
#: src/components/wizards/ImportPartWizard.tsx:224
msgid "Select supplier"
@@ -3643,7 +3656,7 @@ msgstr "导入此零件"
#: src/components/wizards/ImportPartWizard.tsx:313
msgid "Are you sure you want to import this part into the selected category now?"
-msgstr ""
+msgstr "你确定你要将这个零件载入选择的类别里吗?"
#: src/components/wizards/ImportPartWizard.tsx:326
msgid "Import Now"
@@ -3651,82 +3664,82 @@ msgstr "立即导入"
#: src/components/wizards/ImportPartWizard.tsx:372
msgid "Select and edit the parameters you want to add to this part."
-msgstr ""
+msgstr "选择并编辑你想要给这个零件添加的参数。"
#: src/components/wizards/ImportPartWizard.tsx:379
msgid "Default category parameters"
-msgstr ""
+msgstr "默认的类别参数"
#: src/components/wizards/ImportPartWizard.tsx:391
msgid "Other parameters"
-msgstr ""
+msgstr "其他参数"
#: src/components/wizards/ImportPartWizard.tsx:446
msgid "Add a new parameter"
-msgstr ""
+msgstr "添加新的参数"
#: src/components/wizards/ImportPartWizard.tsx:468
msgid "Skip"
-msgstr ""
+msgstr "跳过"
#: src/components/wizards/ImportPartWizard.tsx:476
msgid "Create Parameters"
-msgstr ""
+msgstr "创建参数"
#: src/components/wizards/ImportPartWizard.tsx:493
msgid "Create initial stock for the imported part."
-msgstr ""
+msgstr "为添加的零件创建初始库存。"
#: src/components/wizards/ImportPartWizard.tsx:511
msgid "Next"
-msgstr ""
+msgstr "下一个"
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "编辑零件"
#: src/components/wizards/ImportPartWizard.tsx:567
msgid "Part imported successfully!"
-msgstr ""
+msgstr "零件添加成功!"
#: src/components/wizards/ImportPartWizard.tsx:576
msgid "Failed to import part: "
-msgstr ""
+msgstr "零件添加失败: "
#: src/components/wizards/ImportPartWizard.tsx:641
msgid "Are you sure, you want to import the supplier and manufacturer part into this part?"
-msgstr ""
+msgstr "您确定要将供应商和制造商零件引入到这个零件吗?"
#: src/components/wizards/ImportPartWizard.tsx:655
msgid "Import"
-msgstr ""
+msgstr "导入"
#: src/components/wizards/ImportPartWizard.tsx:692
msgid "Parameters created successfully!"
-msgstr ""
+msgstr "参数创建成功!"
#: src/components/wizards/ImportPartWizard.tsx:720
msgid "Failed to create parameters, please fix the errors and try again"
-msgstr ""
+msgstr "参数创建失败,请修复错误后重试"
#. placeholder {0}: supplierPart?.supplier
#: src/components/wizards/ImportPartWizard.tsx:740
msgid "Part imported successfully from supplier {0}."
-msgstr ""
+msgstr "从供应商 {0} 成功导入零件。"
#: src/components/wizards/ImportPartWizard.tsx:753
msgid "Open Part"
-msgstr ""
+msgstr "打开零件"
#: src/components/wizards/ImportPartWizard.tsx:760
msgid "Open Supplier Part"
-msgstr ""
+msgstr "打开供应商零件"
#: src/components/wizards/ImportPartWizard.tsx:767
msgid "Open Manufacturer Part"
-msgstr ""
+msgstr "打开制造商零件"
#: src/components/wizards/ImportPartWizard.tsx:797
#: src/tables/part/PartTable.tsx:499
@@ -3735,48 +3748,48 @@ msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:803
msgid "Import Supplier Part"
-msgstr ""
+msgstr "导入供应商零件"
#: src/components/wizards/ImportPartWizard.tsx:805
msgid "Search Supplier Part"
-msgstr ""
+msgstr "搜索供应商零件"
#: src/components/wizards/ImportPartWizard.tsx:807
msgid "Confirm import"
-msgstr ""
+msgstr "确认导入"
#: src/components/wizards/ImportPartWizard.tsx:809
msgid "Done"
-msgstr ""
+msgstr "完成"
#: src/components/wizards/OrderPartsWizard.tsx:75
msgid "Error fetching part requirements"
-msgstr ""
+msgstr "获取零件要求时出错"
#: src/components/wizards/OrderPartsWizard.tsx:113
msgid "Requirements"
-msgstr ""
+msgstr "要求"
#: src/components/wizards/OrderPartsWizard.tsx:117
msgid "Build Requirements"
-msgstr ""
+msgstr "生产需求"
#: src/components/wizards/OrderPartsWizard.tsx:123
msgid "Sales Requirements"
-msgstr ""
+msgstr "销售需求"
#: src/components/wizards/OrderPartsWizard.tsx:129
#: src/forms/StockForms.tsx:894
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -3819,7 +3832,7 @@ msgstr "选择供应商零件"
#: src/components/wizards/OrderPartsWizard.tsx:323
msgid "Copy supplier part number"
-msgstr ""
+msgstr "复制供应商零件编号"
#: src/components/wizards/OrderPartsWizard.tsx:326
msgid "New supplier part"
@@ -4038,77 +4051,81 @@ msgstr "订购零件"
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "跳转到 InvenTree 仪表板"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "访问文档以了解更多关于 InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "关于 InvenTree 组织"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "服务器信息"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr "关于 InvenTree 实例"
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "许可信息"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "服务依赖关系许可"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "打开导航"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "打开主导航菜单"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr "扫描条形码或二维码"
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
-msgstr ""
+msgstr "前往您的用户设置"
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
-msgstr ""
+msgstr "跳转到采购订单"
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
-msgstr ""
+msgstr "转到销售订单"
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
-msgstr ""
+msgstr "跳转到退货订单"
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
-msgstr ""
+msgstr "前往生产订单"
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
-msgstr ""
+msgstr "跳转到系统设置"
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "转到管理中心"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr "管理InvenTree插件"
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr "替代项已添加"
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "生产产出"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr "待完成数量"
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr "待完成数量"
msgid "Status"
msgstr "状态"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "完成生产输出"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "生产已完成"
@@ -4428,24 +4445,24 @@ msgstr "生产已完成"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr "待报废数量"
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "报废生产输出"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr "选定的生产产出将被完成,但标记为报废"
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr "已分配的库存物料将被消耗"
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "生产已完成"
@@ -4453,24 +4470,24 @@ msgstr "生产已完成"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "取消生产输出"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr "选定的生产产出将被移除"
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr "已分配的库存物料将退回可用库存"
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "生产已完成"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "生产已完成"
msgid "IPN"
msgstr "内部零件编码 IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "已分配"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "来源地点"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "选择分配库存的源位置"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "选择分配库存的源位置"
msgid "Allocate Stock"
msgstr "分配库存"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "分配的库存项目"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "分配的库存项目"
msgid "Consume Stock"
msgstr "消耗库存"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
-msgstr ""
+msgstr "计划消耗的库存物品"
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr "已全部消耗"
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4566,14 +4583,18 @@ msgstr "已消耗"
#: src/forms/ReturnOrderForms.tsx:138
#: src/forms/SalesOrderForms.tsx:185
msgid "Select project code for this line item"
-msgstr ""
+msgstr "请为此行项目选择项目编码"
#: src/forms/CompanyForms.tsx:150
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "已订阅"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr "订阅此零件的通知"
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "上级零件类别"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr "订阅此类别的通知"
@@ -4690,8 +4707,8 @@ msgstr "存储已收到的库存"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4770,11 +4787,11 @@ msgstr "已收到库存物品"
#: src/forms/SalesOrderForms.tsx:210
#: src/tables/sales/SalesOrderShipmentTable.tsx:215
msgid "Check Shipment"
-msgstr ""
+msgstr "检查发货"
#: src/forms/SalesOrderForms.tsx:211
msgid "Marking the shipment as checked indicates that you have verified that all items included in this shipment are correct"
-msgstr ""
+msgstr "将装运标记为已检查的货物,表明您已经验证这批装运的所有物品都是正确的"
#: src/forms/SalesOrderForms.tsx:221
msgid "Shipment marked as checked"
@@ -4854,145 +4871,145 @@ msgstr "退货"
msgid "Count"
msgstr "总计"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "添加库存"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr "库存已添加"
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr "按指定数量增加选定库存物料的存量。"
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "移除库存"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr "库存已移除"
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr "按指定数量减少选定库存物料的存量。"
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "转移库存"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr "库存已转移"
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr "将选定物料转移至指定位置。"
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr "退回库存"
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr "库存已退回"
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr "将选定物料退回库存至指定位置。"
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "库存数量"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr "库存计数"
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr "统计选定库存物料数量并按需调整。"
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "更改库存状态"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr "库存状态已改变"
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr "变更选定库存物料的状态。"
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "合并库存"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr "库存已合并"
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr "合并库存物料"
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr "合并操作不可逆"
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr "合并操作可能导致追溯信息丢失"
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr "合并操作可能导致供应商信息丢失"
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr "将库存分配给客户"
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr "库存已分配给客户"
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "删除库存项"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr "库存已删除"
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr "此操作将永久删除选定的库存物料。"
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "上级库存地点"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr "查找序列号"
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr "未找到匹配项"
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr "存在多个匹配项"
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr "服务器返回无效响应"
@@ -5062,99 +5079,110 @@ msgstr "服务内部错误"
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr "您已经登陆了"
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr "此浏览器的服务器上存在冲突会话。请先登出该会话。"
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "已登出"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
-msgstr "服务器无响应。"
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
+msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr "服务器无响应。"
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr "MFA登录验证成功"
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr "浏览器自动提供了MFA验证信息"
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "已登出"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "已成功登出"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr "语言已更改"
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr "您的活动语言已被更改为您个人资料中设置的语言"
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr "主题已更改"
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr "您的活动主题已被更改为您个人资料中设置的主题"
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "查看收件箱中的重置链接。这只有在您有账户的情况下才会起作用。也请检查垃圾邮件。"
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "重置失败"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr "您已经登陆了"
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr "此浏览器的服务器上存在冲突会话。请先登出该会话。"
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "已登录"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "已成功登入"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr "设置 MFA 失败"
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "密码已设置"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "密码设置成功。您现在可以使用新密码登录"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr "无法更改密码"
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr "两个密码不匹配"
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr "密码已更改"
@@ -5210,11 +5238,11 @@ msgstr "请求已超时"
msgid "Exporting Data"
msgstr "正在导出数据"
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr "导出数据"
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr "导出"
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr "删除选中的库存物料"
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "库存操作"
@@ -5383,12 +5411,12 @@ msgstr "没有帐户?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr "多因素认证"
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr "TOTP 代码"
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr "位置"
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr "类型"
@@ -5933,220 +5961,220 @@ msgstr "编辑个人资料"
msgid "{0}"
msgstr "{0}"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
-msgstr ""
+msgstr "重新验证成功"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
-msgstr ""
+msgstr "您已成功重新验证。"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
-msgstr ""
+msgstr "重新验证失败"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
-msgstr ""
-
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
-msgid "Reauthenticate"
-msgstr ""
+msgstr "重新验证失败"
#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
-msgid "Reauthentiction is required to continue."
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
+msgid "Reauthenticate"
+msgstr "重新验证"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
+msgid "Reauthentiction is required to continue."
+msgstr "重新验证以继续。"
+
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr "输入您的密码"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
-msgstr ""
+msgstr "确认移除"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr "注册TOTP 令牌时出错"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr "注册TOTP 令牌"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr "恢复代码"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr "TOTP"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr "基于时间的一次性密码"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr "预生成的一次性恢复代码"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr "最近使用"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr "创建于"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr "未配置"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr "该账户未配置多因素认证令牌"
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr "动态密码"
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr "输入TOTP 代码以确保正确注册"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr "电子邮件地址"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
+msgstr "电子邮件地址"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
msgid "Single Sign On"
msgstr "单点登录"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "未启用"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr "此服务器未启用单点登录 "
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "未启用"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr "此服务器未启用单点登录 "
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr "访问令牌"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr "会话信息"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr "会话信息"
msgid "Timestamp"
msgstr "时间戳"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr "认证方式"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr "更新电子邮件时出错"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr "当前未注册任何电子邮件地址。"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "以下电子邮件地址与您的账户相关联:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "主要的"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "已验证"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "未验证"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "设为首选"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "重新发送验证"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "添加电子邮件地址"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "邮箱"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "邮箱地址"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr "添加电子邮件时出错"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "添加电子邮件地址"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "邮箱"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "邮箱地址"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr "添加电子邮件时出错"
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "添加电子邮件"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr "添加电子邮件时出错"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "添加电子邮件"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr "没有供应商连接到此帐户。"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr "您可以使用以下任何供应商登录到您的帐户"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr "删除供应商链接"
@@ -6921,7 +6949,7 @@ msgstr "自定义状态"
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "子生产订单"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr "显示外部生产订单"
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr "表格视图"
@@ -7245,6 +7274,7 @@ msgstr "日历视图"
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "外部链接"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "零件详情"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "添加供应商零件"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "无库存"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr "基本用户"
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "子类别"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr "移动项目到父类别"
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "删除项"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "可销售零件"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "创建人"
msgid "Default Supplier"
msgstr "默认供应商"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr "默认有效期"
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr "天"
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "价格范围"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr "最新序列号"
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "选择零件版本"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "变体"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "分配"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "物料清单"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "用于"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "零件价格"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "测试模板"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "关联零件"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "零件已锁定"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "零件参数无法编辑,因为零件已锁定"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "零件参数无法编辑,因为零件已锁定"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "必填"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "添加零件"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "删除零件"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "删除此零件无法撤销"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "订单"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "订单库存"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr "按序列号搜索"
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "零件选项"
@@ -8008,8 +8038,8 @@ msgstr "最大值"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "最大值"
msgid "Total Price"
msgstr "总价"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "组件"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "最低价格"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "最高价格"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "最高价格"
msgid "Unit Price"
msgstr "单价"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "饼状图"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "柱状图"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "上级地点"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "次级地点"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "位置类型"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "最高级库存位置"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "位置详细信息"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "默认零件"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "编辑库存地点"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr "移动项目到父位置"
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "删除库存地点"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "项目操作"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "对此位置中的库存物品执行的操作"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "编辑库存地点"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr "移动项目到父位置"
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "删除库存地点"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "项目操作"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "对此位置中的库存物品执行的操作"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "对此位置中的子位置执行的操作"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr "扫描库存物料"
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr "库存物料已扫描入库"
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr "库存物料扫描错误"
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr "扫描库存地点"
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr "库存地点绑定完成"
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr "库存地点扫描错误"
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "位置操作"
@@ -8917,6 +8947,7 @@ msgstr "显示带有序列号的项目"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr "序列号"
@@ -9139,12 +9170,12 @@ msgstr "添加过滤条件"
msgid "Clear Filters"
msgstr "清除筛选"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "没有找到记录"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr "表格选项加载错误"
@@ -9156,7 +9187,7 @@ msgstr "表格选项加载错误"
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "服务器返回了错误的数据类型"
@@ -9176,7 +9207,7 @@ msgstr "服务器返回了错误的数据类型"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr "表格数据加载错误"
@@ -9190,11 +9221,11 @@ msgstr "表格数据加载错误"
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr "查看详情"
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr "显示开始日期的订单"
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr "生成产出库存分配"
@@ -10049,7 +10080,7 @@ msgstr "查看项目"
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "添加行项目"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "编辑行项目"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr "所需库存"
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr "查看生产订单"
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "导入行项目"
@@ -11222,11 +11253,11 @@ msgstr "显示已收到的行项目"
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "接收这行项目"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "收到项目"
diff --git a/src/frontend/src/locales/zh_Hant/messages.po b/src/frontend/src/locales/zh_Hant/messages.po
index 76d1693fe8..984af2c054 100644
--- a/src/frontend/src/locales/zh_Hant/messages.po
+++ b/src/frontend/src/locales/zh_Hant/messages.po
@@ -8,7 +8,7 @@ msgstr ""
"Language: zh\n"
"Project-Id-Version: inventree\n"
"Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2025-12-07 07:36\n"
+"PO-Revision-Date: 2026-01-17 04:57\n"
"Last-Translator: \n"
"Language-Team: Chinese Traditional\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@@ -46,9 +46,9 @@ msgstr "刪除"
#: src/components/items/ActionDropdown.tsx:278
#: src/contexts/ThemeContext.tsx:45
#: src/hooks/UseForm.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:146
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:321
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:412
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:148
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:323
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:414
#: src/tables/FilterSelectDrawer.tsx:336
#: src/tables/build/BuildOutputTable.tsx:560
msgid "Cancel"
@@ -62,8 +62,8 @@ msgstr "取消"
#: src/forms/StockForms.tsx:896
#: src/forms/StockForms.tsx:942
#: src/forms/StockForms.tsx:980
-#: src/forms/StockForms.tsx:1066
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:962
+#: src/forms/StockForms.tsx:1090
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:976
msgid "Actions"
msgstr "操作"
@@ -73,7 +73,7 @@ msgstr "操作"
#: src/components/wizards/ImportPartWizard.tsx:200
#: src/components/wizards/ImportPartWizard.tsx:233
#: src/pages/Index/Settings/UserSettings.tsx:75
-#: src/pages/part/PartDetail.tsx:1176
+#: src/pages/part/PartDetail.tsx:1182
msgid "Search"
msgstr "搜尋"
@@ -97,12 +97,12 @@ msgstr "否"
#: lib/enums/ModelInformation.tsx:29
#: src/components/wizards/OrderPartsWizard.tsx:279
-#: src/forms/BuildForms.tsx:332
-#: src/forms/BuildForms.tsx:407
-#: src/forms/BuildForms.tsx:472
-#: src/forms/BuildForms.tsx:630
-#: src/forms/BuildForms.tsx:793
-#: src/forms/BuildForms.tsx:896
+#: src/forms/BuildForms.tsx:336
+#: src/forms/BuildForms.tsx:411
+#: src/forms/BuildForms.tsx:481
+#: src/forms/BuildForms.tsx:639
+#: src/forms/BuildForms.tsx:802
+#: src/forms/BuildForms.tsx:905
#: src/forms/PurchaseOrderForms.tsx:850
#: src/forms/ReturnOrderForms.tsx:242
#: src/forms/SalesOrderForms.tsx:384
@@ -113,12 +113,13 @@ msgstr "否"
#: src/forms/StockForms.tsx:937
#: src/forms/StockForms.tsx:975
#: src/forms/StockForms.tsx:1018
-#: src/forms/StockForms.tsx:1062
-#: src/forms/StockForms.tsx:1110
-#: src/forms/StockForms.tsx:1154
+#: src/forms/StockForms.tsx:1086
+#: src/forms/StockForms.tsx:1134
+#: src/forms/StockForms.tsx:1178
#: src/pages/build/BuildDetail.tsx:201
-#: src/pages/part/PartDetail.tsx:1228
+#: src/pages/part/PartDetail.tsx:1234
#: src/tables/ColumnRenderers.tsx:91
+#: src/tables/build/BuildOrderParametricTable.tsx:26
#: src/tables/part/PartTestResultTable.tsx:247
#: src/tables/part/RelatedPartTable.tsx:53
#: src/tables/stock/StockTrackingTable.tsx:87
@@ -134,7 +135,7 @@ msgstr "零件"
#: src/pages/part/CategoryDetail.tsx:285
#: src/pages/part/CategoryDetail.tsx:340
#: src/pages/part/CategoryDetail.tsx:371
-#: src/pages/part/PartDetail.tsx:978
+#: src/pages/part/PartDetail.tsx:981
msgid "Parts"
msgstr "零件"
@@ -152,11 +153,11 @@ msgid "Parameter"
msgstr ""
#: lib/enums/ModelInformation.tsx:40
-#: src/components/panels/ParametersPanel.tsx:19
+#: src/components/panels/ParametersPanel.tsx:21
#: src/components/wizards/ImportPartWizard.tsx:807
#: src/pages/Index/Settings/AdminCenter/Index.tsx:195
#: src/pages/Index/Settings/SystemSettings.tsx:191
-#: src/pages/part/PartDetail.tsx:943
+#: src/pages/part/PartDetail.tsx:946
msgid "Parameters"
msgstr "參數"
@@ -218,14 +219,14 @@ msgstr "零件類別"
#: lib/enums/Roles.tsx:37
#: src/pages/part/CategoryDetail.tsx:279
#: src/pages/part/CategoryDetail.tsx:362
-#: src/pages/part/PartDetail.tsx:1217
+#: src/pages/part/PartDetail.tsx:1223
msgid "Part Categories"
msgstr "零件類別"
#: lib/enums/ModelInformation.tsx:88
-#: src/forms/BuildForms.tsx:473
-#: src/forms/BuildForms.tsx:633
-#: src/forms/BuildForms.tsx:794
+#: src/forms/BuildForms.tsx:482
+#: src/forms/BuildForms.tsx:642
+#: src/forms/BuildForms.tsx:803
#: src/forms/SalesOrderForms.tsx:386
#: src/pages/stock/StockDetail.tsx:1005
#: src/tables/part/PartTestResultTable.tsx:256
@@ -239,20 +240,20 @@ msgstr "庫存項"
#: src/pages/company/CompanyDetail.tsx:211
#: src/pages/part/CategoryDetail.tsx:314
#: src/pages/part/PartStockHistoryDetail.tsx:101
-#: src/pages/stock/LocationDetail.tsx:121
-#: src/pages/stock/LocationDetail.tsx:180
+#: src/pages/stock/LocationDetail.tsx:130
+#: src/pages/stock/LocationDetail.tsx:211
msgid "Stock Items"
msgstr "庫存項"
#: lib/enums/ModelInformation.tsx:98
#: lib/enums/Roles.tsx:47
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/stock/LocationDetail.tsx:456
msgid "Stock Location"
msgstr "庫存地點"
#: lib/enums/ModelInformation.tsx:99
-#: src/pages/stock/LocationDetail.tsx:174
-#: src/pages/stock/LocationDetail.tsx:412
+#: src/pages/stock/LocationDetail.tsx:185
+#: src/pages/stock/LocationDetail.tsx:448
#: src/pages/stock/StockDetail.tsx:996
msgid "Stock Locations"
msgstr "庫存地點"
@@ -267,7 +268,7 @@ msgstr "庫存地點類型"
#: lib/enums/ModelInformation.tsx:114
#: src/pages/Index/Settings/SystemSettings.tsx:254
-#: src/pages/part/PartDetail.tsx:900
+#: src/pages/part/PartDetail.tsx:903
msgid "Stock History"
msgstr "庫存歷史記錄"
@@ -340,11 +341,11 @@ msgstr "採購訂單"
#: lib/enums/ModelInformation.tsx:160
#: lib/enums/Roles.tsx:39
-#: src/defaults/actions.tsx:104
+#: src/defaults/actions.tsx:105
#: src/pages/Index/Settings/SystemSettings.tsx:289
#: src/pages/company/CompanyDetail.tsx:204
#: src/pages/company/SupplierPartDetail.tsx:267
-#: src/pages/part/PartDetail.tsx:864
+#: src/pages/part/PartDetail.tsx:867
#: src/pages/purchasing/PurchasingIndex.tsx:66
msgid "Purchase Orders"
msgstr "採購訂單"
@@ -373,10 +374,10 @@ msgstr "銷售訂單"
#: lib/enums/ModelInformation.tsx:176
#: lib/enums/Roles.tsx:43
-#: src/defaults/actions.tsx:114
+#: src/defaults/actions.tsx:115
#: src/pages/Index/Settings/SystemSettings.tsx:305
#: src/pages/company/CompanyDetail.tsx:224
-#: src/pages/part/PartDetail.tsx:876
+#: src/pages/part/PartDetail.tsx:879
#: src/pages/sales/SalesIndex.tsx:53
msgid "Sales Orders"
msgstr "銷售訂單"
@@ -398,10 +399,10 @@ msgstr "退貨訂單"
#: lib/enums/ModelInformation.tsx:195
#: lib/enums/Roles.tsx:41
-#: src/defaults/actions.tsx:125
+#: src/defaults/actions.tsx:126
#: src/pages/Index/Settings/SystemSettings.tsx:322
#: src/pages/company/CompanyDetail.tsx:231
-#: src/pages/part/PartDetail.tsx:883
+#: src/pages/part/PartDetail.tsx:886
#: src/pages/sales/SalesIndex.tsx:99
msgid "Return Orders"
msgstr "退貨訂單"
@@ -546,23 +547,23 @@ msgstr "選擇列表"
#: src/components/forms/fields/ApiFormField.tsx:237
#: src/components/forms/fields/TableField.tsx:45
#: src/components/importer/ImportDataSelector.tsx:192
-#: src/components/importer/ImporterColumnSelector.tsx:234
+#: src/components/importer/ImporterColumnSelector.tsx:261
#: src/components/importer/ImporterDrawer.tsx:88
#: src/components/modals/LicenseModal.tsx:85
#: src/components/nav/NavigationTree.tsx:211
#: src/components/nav/NotificationDrawer.tsx:235
#: src/components/nav/SearchDrawer.tsx:572
-#: src/components/settings/SettingList.tsx:139
+#: src/components/settings/SettingList.tsx:143
#: src/components/wizards/ImportPartWizard.tsx:574
#: src/components/wizards/ImportPartWizard.tsx:719
#: src/forms/BomForms.tsx:69
-#: src/functions/auth.tsx:643
+#: src/functions/auth.tsx:677
#: src/pages/ErrorPage.tsx:11
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:315
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:406
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:637
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:816
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:175
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:317
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:408
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:639
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:830
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189
#: src/pages/part/PartPricingPanel.tsx:71
#: src/states/IconState.tsx:46
#: src/states/IconState.tsx:76
@@ -584,10 +585,10 @@ msgid "Admin"
msgstr "管理"
#: lib/enums/Roles.tsx:33
-#: src/defaults/actions.tsx:135
+#: src/defaults/actions.tsx:136
#: src/pages/Index/Settings/SystemSettings.tsx:270
#: src/pages/build/BuildIndex.tsx:67
-#: src/pages/part/PartDetail.tsx:893
+#: src/pages/part/PartDetail.tsx:896
#: src/pages/sales/SalesOrderDetail.tsx:422
msgid "Build Orders"
msgstr "生產訂單"
@@ -597,11 +598,11 @@ msgstr "生產訂單"
#~ msgid "Stocktake"
#~ msgstr "Stocktake"
-#: src/components/Boundary.tsx:12
+#: src/components/Boundary.tsx:14
msgid "Error rendering component"
msgstr "渲染組件出錯"
-#: src/components/Boundary.tsx:14
+#: src/components/Boundary.tsx:16
msgid "An error occurred while rendering this component. Refer to the console for more information."
msgstr "渲染此組件時發生錯誤。請參閲控制枱獲取更多信息。"
@@ -637,7 +638,7 @@ msgstr "條碼"
#: src/components/barcodes/BarcodeInput.tsx:35
#: src/components/barcodes/BarcodeKeyboardInput.tsx:18
-#: src/defaults/actions.tsx:85
+#: src/defaults/actions.tsx:86
msgid "Scan"
msgstr "掃描"
@@ -798,12 +799,12 @@ msgstr ""
#~ msgid "The label could not be generated"
#~ msgstr "The label could not be generated"
-#: src/components/buttons/PrintingActions.tsx:124
+#: src/components/buttons/PrintingActions.tsx:126
msgid "Print Label"
msgstr "打印標籤"
-#: src/components/buttons/PrintingActions.tsx:134
-#: src/components/buttons/PrintingActions.tsx:168
+#: src/components/buttons/PrintingActions.tsx:138
+#: src/components/buttons/PrintingActions.tsx:172
msgid "Print"
msgstr "打印"
@@ -819,19 +820,19 @@ msgstr "打印"
#~ msgid "The report could not be generated"
#~ msgstr "The report could not be generated"
-#: src/components/buttons/PrintingActions.tsx:161
+#: src/components/buttons/PrintingActions.tsx:165
msgid "Print Report"
msgstr "打印報告"
-#: src/components/buttons/PrintingActions.tsx:189
+#: src/components/buttons/PrintingActions.tsx:193
msgid "Printing Actions"
msgstr "打印操作"
-#: src/components/buttons/PrintingActions.tsx:195
+#: src/components/buttons/PrintingActions.tsx:199
msgid "Print Labels"
msgstr "打印標籤"
-#: src/components/buttons/PrintingActions.tsx:201
+#: src/components/buttons/PrintingActions.tsx:205
msgid "Print Reports"
msgstr "列印報告"
@@ -860,8 +861,8 @@ msgstr ""
#~ msgstr "Open QR code scanner"
#: src/components/buttons/ScanButton.tsx:32
-msgid "Open Barcode Scanner"
-msgstr ""
+#~ msgid "Open Barcode Scanner"
+#~ msgstr "Open Barcode Scanner"
#: src/components/buttons/SpotlightButton.tsx:12
msgid "Open spotlight"
@@ -937,7 +938,7 @@ msgstr ""
#: src/components/dashboard/DashboardMenu.tsx:94
#: src/components/nav/NavigationDrawer.tsx:64
-#: src/defaults/actions.tsx:41
+#: src/defaults/actions.tsx:42
#: src/defaults/links.tsx:31
#: src/pages/Index/Home.tsx:8
msgid "Dashboard"
@@ -1237,11 +1238,11 @@ msgstr "刪除與此項關聯的圖片?"
#: src/components/details/DetailsImage.tsx:83
#: src/forms/StockForms.tsx:895
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:324
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:415
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:884
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:903
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:254
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:326
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:417
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:898
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:917
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:268
#: src/tables/build/BuildAllocatedStockTable.tsx:178
#: src/tables/build/BuildAllocatedStockTable.tsx:258
#: src/tables/build/BuildLineTable.tsx:111
@@ -1280,8 +1281,8 @@ msgstr "清除"
#: src/components/details/DetailsImage.tsx:256
#: src/components/forms/ApiForm.tsx:696
#: src/contexts/ThemeContext.tsx:44
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:149
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:568
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:151
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:570
msgid "Submit"
msgstr "提交"
@@ -1579,21 +1580,21 @@ msgstr "登錄成功"
#: src/components/forms/AuthenticationForm.tsx:81
#: src/components/forms/AuthenticationForm.tsx:89
-#: src/functions/auth.tsx:132
-#: src/functions/auth.tsx:141
+#: src/functions/auth.tsx:133
+#: src/functions/auth.tsx:142
msgid "Login failed"
msgstr "登錄失敗"
#: src/components/forms/AuthenticationForm.tsx:82
#: src/components/forms/AuthenticationForm.tsx:90
#: src/components/forms/AuthenticationForm.tsx:106
-#: src/functions/auth.tsx:133
-#: src/functions/auth.tsx:313
+#: src/functions/auth.tsx:134
+#: src/functions/auth.tsx:340
msgid "Check your input and try again."
msgstr "請檢查您的輸入並重試。"
#: src/components/forms/AuthenticationForm.tsx:100
-#: src/functions/auth.tsx:304
+#: src/functions/auth.tsx:331
msgid "Mail delivery successful"
msgstr "郵件發送成功"
@@ -1628,7 +1629,7 @@ msgstr "你的用户名"
#: src/components/forms/AuthenticationForm.tsx:143
#: src/components/forms/AuthenticationForm.tsx:311
#: src/pages/Auth/ResetPassword.tsx:34
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:193
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
msgid "Password"
msgstr "密碼"
@@ -1732,7 +1733,7 @@ msgstr "主機"
#: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19
#: src/pages/part/CategoryDetail.tsx:91
#: src/pages/part/PartDetail.tsx:446
-#: src/pages/stock/LocationDetail.tsx:82
+#: src/pages/stock/LocationDetail.tsx:91
#: src/tables/machine/MachineTypeTable.tsx:67
#: src/tables/machine/MachineTypeTable.tsx:149
#: src/tables/machine/MachineTypeTable.tsx:252
@@ -1818,6 +1819,7 @@ msgstr "API 版本"
#: src/components/forms/InstanceOptions.tsx:142
#: src/components/nav/NavigationDrawer.tsx:197
+#: src/defaults/actions.tsx:163
#: src/pages/Index/Settings/AdminCenter/Index.tsx:228
#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:46
msgid "Plugins"
@@ -1892,7 +1894,7 @@ msgstr "{0} 個圖標"
#: src/components/forms/fields/RelatedModelField.tsx:480
#: src/components/modals/AboutInvenTreeModal.tsx:96
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:383
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:397
msgid "Loading"
msgstr "正在加載"
@@ -1979,10 +1981,10 @@ msgid "Processing Data"
msgstr "處理數據中"
#: src/components/importer/ImporterColumnSelector.tsx:56
-#: src/components/importer/ImporterColumnSelector.tsx:203
+#: src/components/importer/ImporterColumnSelector.tsx:230
#: src/components/items/ErrorItem.tsx:12
#: src/functions/api.tsx:60
-#: src/functions/auth.tsx:364
+#: src/functions/auth.tsx:387
msgid "An error occurred"
msgstr "發生錯誤"
@@ -2002,31 +2004,31 @@ msgstr "選擇列,或留空忽略此字段。"
#~ msgid "Imported Column Name"
#~ msgstr "Imported Column Name"
-#: src/components/importer/ImporterColumnSelector.tsx:209
+#: src/components/importer/ImporterColumnSelector.tsx:236
msgid "Ignore this field"
msgstr "忽略該字段"
-#: src/components/importer/ImporterColumnSelector.tsx:223
+#: src/components/importer/ImporterColumnSelector.tsx:250
msgid "Mapping data columns to database fields"
msgstr "將數據列映射到數據庫字段"
-#: src/components/importer/ImporterColumnSelector.tsx:228
+#: src/components/importer/ImporterColumnSelector.tsx:255
msgid "Accept Column Mapping"
msgstr "接受列映射"
-#: src/components/importer/ImporterColumnSelector.tsx:241
+#: src/components/importer/ImporterColumnSelector.tsx:268
msgid "Database Field"
msgstr "數據庫字段"
-#: src/components/importer/ImporterColumnSelector.tsx:242
+#: src/components/importer/ImporterColumnSelector.tsx:269
msgid "Field Description"
msgstr "字段描述"
-#: src/components/importer/ImporterColumnSelector.tsx:243
+#: src/components/importer/ImporterColumnSelector.tsx:270
msgid "Imported Column"
msgstr "導入列"
-#: src/components/importer/ImporterColumnSelector.tsx:244
+#: src/components/importer/ImporterColumnSelector.tsx:271
msgid "Default Value"
msgstr "默認值"
@@ -2039,8 +2041,12 @@ msgid "Map Columns"
msgstr "映射列"
#: src/components/importer/ImporterDrawer.tsx:45
-msgid "Import Data"
-msgstr "導入數據"
+msgid "Import Rows"
+msgstr ""
+
+#: src/components/importer/ImporterDrawer.tsx:45
+#~ msgid "Import Data"
+#~ msgstr "Import Data"
#: src/components/importer/ImporterDrawer.tsx:46
msgid "Process Data"
@@ -2071,7 +2077,7 @@ msgstr "數據已成功導入"
#: src/components/modals/ServerInfoModal.tsx:134
#: src/components/wizards/ImportPartWizard.tsx:773
#: src/forms/BomForms.tsx:132
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:685
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:687
msgid "Close"
msgstr "關閉"
@@ -2208,7 +2214,7 @@ msgstr ""
#: src/components/items/RoleTable.tsx:118
#: src/components/settings/ConfigValueList.tsx:42
-#: src/pages/part/pricing/BomPricingPanel.tsx:152
+#: src/pages/part/pricing/BomPricingPanel.tsx:151
#: src/pages/part/pricing/VariantPricingPanel.tsx:51
#: src/tables/purchasing/SupplierPartTable.tsx:155
msgid "Updated"
@@ -2223,7 +2229,7 @@ msgid "Role"
msgstr ""
#: src/components/items/RoleTable.tsx:140
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:892
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:906
msgid "View"
msgstr ""
@@ -2255,10 +2261,10 @@ msgstr ""
#: src/components/items/TransferList.tsx:161
#: src/components/render/Stock.tsx:102
-#: src/pages/part/PartDetail.tsx:1009
+#: src/pages/part/PartDetail.tsx:1012
#: src/pages/stock/StockDetail.tsx:265
#: src/pages/stock/StockDetail.tsx:942
-#: src/tables/build/BuildAllocatedStockTable.tsx:132
+#: src/tables/build/BuildAllocatedStockTable.tsx:125
#: src/tables/build/BuildLineTable.tsx:193
#: src/tables/part/PartTable.tsx:137
#: src/tables/stock/StockItemTable.tsx:182
@@ -2320,7 +2326,7 @@ msgstr "鏈接"
#: src/components/modals/AboutInvenTreeModal.tsx:180
#: src/components/nav/NavigationDrawer.tsx:208
-#: src/defaults/actions.tsx:48
+#: src/defaults/actions.tsx:49
msgid "Documentation"
msgstr "文檔"
@@ -2547,7 +2553,7 @@ msgstr "設置"
#: src/components/nav/MainMenu.tsx:61
#: src/components/nav/NavigationDrawer.tsx:140
#: src/components/nav/SettingsHeader.tsx:40
-#: src/defaults/actions.tsx:92
+#: src/defaults/actions.tsx:93
#: src/pages/Index/Settings/UserSettings.tsx:142
#: src/pages/Index/Settings/UserSettings.tsx:146
msgid "User Settings"
@@ -2565,7 +2571,7 @@ msgstr ""
#: src/components/nav/MainMenu.tsx:69
#: src/components/nav/NavigationDrawer.tsx:146
#: src/components/nav/SettingsHeader.tsx:41
-#: src/defaults/actions.tsx:144
+#: src/defaults/actions.tsx:145
#: src/pages/Index/Settings/SystemSettings.tsx:354
#: src/pages/Index/Settings/SystemSettings.tsx:359
msgid "System Settings"
@@ -2578,14 +2584,14 @@ msgstr "系統設置"
#: src/components/nav/MainMenu.tsx:78
#: src/components/nav/NavigationDrawer.tsx:153
#: src/components/nav/SettingsHeader.tsx:42
-#: src/defaults/actions.tsx:153
+#: src/defaults/actions.tsx:154
#: src/pages/Index/Settings/AdminCenter/Index.tsx:293
#: src/pages/Index/Settings/AdminCenter/Index.tsx:298
msgid "Admin Center"
msgstr "管理中心"
#: src/components/nav/MainMenu.tsx:99
-#: src/defaults/actions.tsx:57
+#: src/defaults/actions.tsx:58
#: src/defaults/links.tsx:140
#: src/defaults/links.tsx:186
msgid "About InvenTree"
@@ -2618,9 +2624,9 @@ msgstr "登出"
#: src/defaults/links.tsx:42
#: src/forms/StockForms.tsx:794
#: src/pages/Index/Settings/SystemSettings.tsx:230
-#: src/pages/part/PartDetail.tsx:793
-#: src/pages/stock/LocationDetail.tsx:390
-#: src/pages/stock/LocationDetail.tsx:420
+#: src/pages/part/PartDetail.tsx:796
+#: src/pages/stock/LocationDetail.tsx:426
+#: src/pages/stock/LocationDetail.tsx:456
#: src/pages/stock/StockDetail.tsx:642
#: src/tables/stock/StockItemTable.tsx:85
msgid "Stock"
@@ -2705,7 +2711,7 @@ msgstr ""
#: src/components/nav/SearchDrawer.tsx:288
#: src/pages/company/ManufacturerPartDetail.tsx:179
-#: src/pages/part/PartDetail.tsx:851
+#: src/pages/part/PartDetail.tsx:854
#: src/pages/part/PartSupplierDetail.tsx:15
#: src/pages/purchasing/PurchasingIndex.tsx:100
msgid "Suppliers"
@@ -2819,7 +2825,7 @@ msgstr ""
#: src/pages/purchasing/PurchaseOrderDetail.tsx:163
#: src/pages/sales/ReturnOrderDetail.tsx:130
#: src/pages/sales/SalesOrderDetail.tsx:120
-#: src/pages/stock/LocationDetail.tsx:102
+#: src/pages/stock/LocationDetail.tsx:111
#: src/tables/ColumnRenderers.tsx:278
#: src/tables/build/BuildAllocatedStockTable.tsx:88
#: src/tables/machine/MachineTypeTable.tsx:159
@@ -2979,7 +2985,7 @@ msgstr "配送"
#: src/pages/company/CompanyDetail.tsx:328
#: src/pages/company/SupplierPartDetail.tsx:378
#: src/pages/core/UserDetail.tsx:211
-#: src/pages/part/PartDetail.tsx:1048
+#: src/pages/part/PartDetail.tsx:1051
#: src/tables/ColumnRenderers.tsx:410
msgid "Inactive"
msgstr "未激活"
@@ -3001,7 +3007,7 @@ msgstr "無庫存"
#: src/components/wizards/OrderPartsWizard.tsx:135
#: src/pages/company/SupplierPartDetail.tsx:198
#: src/pages/company/SupplierPartDetail.tsx:399
-#: src/pages/part/PartDetail.tsx:1030
+#: src/pages/part/PartDetail.tsx:1033
#: src/tables/bom/BomTable.tsx:444
#: src/tables/build/BuildLineTable.tsx:223
#: src/tables/part/PartTable.tsx:108
@@ -3011,7 +3017,7 @@ msgstr "訂購中"
#: src/components/render/Part.tsx:55
#: src/components/wizards/OrderPartsWizard.tsx:141
#: src/pages/part/PartDetail.tsx:587
-#: src/pages/part/PartDetail.tsx:1036
+#: src/pages/part/PartDetail.tsx:1039
#: src/pages/stock/StockDetail.tsx:925
#: src/tables/part/PartTestResultTable.tsx:305
#: src/tables/stock/StockItemTable.tsx:359
@@ -3036,7 +3042,7 @@ msgstr "類別"
#: src/components/render/Stock.tsx:36
#: src/components/render/Stock.tsx:114
#: src/components/render/Stock.tsx:132
-#: src/forms/BuildForms.tsx:795
+#: src/forms/BuildForms.tsx:804
#: src/forms/PurchaseOrderForms.tsx:647
#: src/forms/StockForms.tsx:792
#: src/forms/StockForms.tsx:839
@@ -3044,9 +3050,9 @@ msgstr "類別"
#: src/forms/StockForms.tsx:938
#: src/forms/StockForms.tsx:976
#: src/forms/StockForms.tsx:1019
-#: src/forms/StockForms.tsx:1063
-#: src/forms/StockForms.tsx:1111
-#: src/forms/StockForms.tsx:1155
+#: src/forms/StockForms.tsx:1087
+#: src/forms/StockForms.tsx:1135
+#: src/forms/StockForms.tsx:1179
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:88
#: src/pages/core/UserDetail.tsx:158
#: src/pages/stock/StockDetail.tsx:298
@@ -3060,17 +3066,16 @@ msgstr "位置"
#: src/components/render/Stock.tsx:99
#: src/pages/stock/StockDetail.tsx:198
#: src/pages/stock/StockDetail.tsx:930
-#: src/tables/build/BuildAllocatedStockTable.tsx:118
-#: src/tables/build/BuildOutputTable.tsx:107
+#: src/tables/build/BuildOutputTable.tsx:106
#: src/tables/sales/SalesOrderAllocationTable.tsx:142
msgid "Serial Number"
msgstr "序列號"
#: src/components/render/Stock.tsx:104
#: src/components/wizards/OrderPartsWizard.tsx:377
-#: src/forms/BuildForms.tsx:240
-#: src/forms/BuildForms.tsx:634
-#: src/forms/BuildForms.tsx:797
+#: src/forms/BuildForms.tsx:242
+#: src/forms/BuildForms.tsx:643
+#: src/forms/BuildForms.tsx:806
#: src/forms/PurchaseOrderForms.tsx:853
#: src/forms/ReturnOrderForms.tsx:243
#: src/forms/SalesOrderForms.tsx:387
@@ -3078,7 +3083,7 @@ msgstr "序列號"
#: src/pages/part/PartStockHistoryDetail.tsx:56
#: src/pages/part/PartStockHistoryDetail.tsx:210
#: src/pages/part/PartStockHistoryDetail.tsx:234
-#: src/pages/part/pricing/BomPricingPanel.tsx:107
+#: src/pages/part/pricing/BomPricingPanel.tsx:106
#: src/pages/part/pricing/PriceBreakPanel.tsx:89
#: src/pages/part/pricing/PriceBreakPanel.tsx:172
#: src/pages/stock/StockDetail.tsx:258
@@ -3095,18 +3100,18 @@ msgid "Quantity"
msgstr "數量"
#: src/components/render/Stock.tsx:117
-#: src/forms/BuildForms.tsx:335
-#: src/forms/BuildForms.tsx:410
-#: src/forms/BuildForms.tsx:474
+#: src/forms/BuildForms.tsx:339
+#: src/forms/BuildForms.tsx:414
+#: src/forms/BuildForms.tsx:483
#: src/forms/StockForms.tsx:793
#: src/forms/StockForms.tsx:840
#: src/forms/StockForms.tsx:893
#: src/forms/StockForms.tsx:939
#: src/forms/StockForms.tsx:977
#: src/forms/StockForms.tsx:1020
-#: src/forms/StockForms.tsx:1064
-#: src/forms/StockForms.tsx:1112
-#: src/forms/StockForms.tsx:1156
+#: src/forms/StockForms.tsx:1088
+#: src/forms/StockForms.tsx:1136
+#: src/forms/StockForms.tsx:1180
#: src/tables/build/BuildLineTable.tsx:93
msgid "Batch"
msgstr "批次"
@@ -3193,11 +3198,19 @@ msgstr ""
msgid "Create a new custom state for your workflow"
msgstr ""
+#: src/components/settings/SettingItem.tsx:33
+msgid "Do you want to proceed to change this setting?"
+msgstr ""
+
#: src/components/settings/SettingItem.tsx:47
#: src/components/settings/SettingItem.tsx:100
#~ msgid "{0} updated successfully"
#~ msgstr "{0} updated successfully"
+#: src/components/settings/SettingItem.tsx:221
+msgid "This setting requires confirmation"
+msgstr ""
+
#: src/components/settings/SettingList.tsx:72
msgid "Edit Setting"
msgstr "編輯設置"
@@ -3206,32 +3219,32 @@ msgstr "編輯設置"
msgid "Setting {key} updated successfully"
msgstr ""
-#: src/components/settings/SettingList.tsx:114
+#: src/components/settings/SettingList.tsx:118
msgid "Setting updated"
msgstr "設置已更新"
#. placeholder {0}: setting.key
-#: src/components/settings/SettingList.tsx:115
+#: src/components/settings/SettingList.tsx:119
msgid "Setting {0} updated successfully"
msgstr "成功更新設置{0}"
-#: src/components/settings/SettingList.tsx:124
+#: src/components/settings/SettingList.tsx:128
msgid "Error editing setting"
msgstr "編輯設置時出錯"
-#: src/components/settings/SettingList.tsx:140
+#: src/components/settings/SettingList.tsx:144
msgid "Error loading settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:151
+#: src/components/settings/SettingList.tsx:155
msgid "No Settings"
msgstr ""
-#: src/components/settings/SettingList.tsx:152
+#: src/components/settings/SettingList.tsx:156
msgid "There are no configurable settings available"
msgstr ""
-#: src/components/settings/SettingList.tsx:189
+#: src/components/settings/SettingList.tsx:193
msgid "No settings specified"
msgstr "未指定設置"
@@ -3682,7 +3695,7 @@ msgid "Next"
msgstr ""
#: src/components/wizards/ImportPartWizard.tsx:540
-#: src/pages/part/PartDetail.tsx:1067
+#: src/pages/part/PartDetail.tsx:1073
#: src/tables/part/PartTable.tsx:408
msgid "Edit Part"
msgstr "編輯零件"
@@ -3770,13 +3783,13 @@ msgstr ""
#: src/forms/StockForms.tsx:940
#: src/forms/StockForms.tsx:978
#: src/forms/StockForms.tsx:1021
-#: src/forms/StockForms.tsx:1065
-#: src/forms/StockForms.tsx:1113
-#: src/forms/StockForms.tsx:1157
+#: src/forms/StockForms.tsx:1089
+#: src/forms/StockForms.tsx:1137
+#: src/forms/StockForms.tsx:1181
#: src/pages/company/SupplierPartDetail.tsx:191
#: src/pages/company/SupplierPartDetail.tsx:383
#: src/pages/part/PartDetail.tsx:534
-#: src/pages/part/PartDetail.tsx:999
+#: src/pages/part/PartDetail.tsx:1002
#: src/tables/Filter.tsx:92
#: src/tables/purchasing/SupplierPartTable.tsx:230
msgid "In Stock"
@@ -4038,77 +4051,81 @@ msgstr ""
#~ msgid "About this Inventree instance"
#~ msgstr "About this Inventree instance"
-#: src/defaults/actions.tsx:42
+#: src/defaults/actions.tsx:43
msgid "Go to the InvenTree dashboard"
msgstr "跳轉到 InvenTree 儀表板"
-#: src/defaults/actions.tsx:49
+#: src/defaults/actions.tsx:50
msgid "Visit the documentation to learn more about InvenTree"
msgstr "訪問文檔以瞭解更多關於 InvenTree"
-#: src/defaults/actions.tsx:58
+#: src/defaults/actions.tsx:59
msgid "About the InvenTree org"
msgstr "關於 InvenTree 組織"
-#: src/defaults/actions.tsx:64
+#: src/defaults/actions.tsx:65
msgid "Server Information"
msgstr "服務器信息"
-#: src/defaults/actions.tsx:65
+#: src/defaults/actions.tsx:66
#: src/defaults/links.tsx:169
msgid "About this InvenTree instance"
msgstr ""
-#: src/defaults/actions.tsx:71
+#: src/defaults/actions.tsx:72
#: src/defaults/links.tsx:153
#: src/defaults/links.tsx:175
msgid "License Information"
msgstr "許可信息"
-#: src/defaults/actions.tsx:72
+#: src/defaults/actions.tsx:73
msgid "Licenses for dependencies of the service"
msgstr "服務依賴關係許可"
-#: src/defaults/actions.tsx:78
+#: src/defaults/actions.tsx:79
msgid "Open Navigation"
msgstr "打開導航"
-#: src/defaults/actions.tsx:79
+#: src/defaults/actions.tsx:80
msgid "Open the main navigation menu"
msgstr "打開主導航菜單"
-#: src/defaults/actions.tsx:86
+#: src/defaults/actions.tsx:87
msgid "Scan a barcode or QR code"
msgstr ""
-#: src/defaults/actions.tsx:94
+#: src/defaults/actions.tsx:95
msgid "Go to your user settings"
msgstr ""
-#: src/defaults/actions.tsx:105
+#: src/defaults/actions.tsx:106
msgid "Go to Purchase Orders"
msgstr ""
-#: src/defaults/actions.tsx:115
+#: src/defaults/actions.tsx:116
msgid "Go to Sales Orders"
msgstr ""
-#: src/defaults/actions.tsx:126
+#: src/defaults/actions.tsx:127
msgid "Go to Return Orders"
msgstr ""
-#: src/defaults/actions.tsx:136
+#: src/defaults/actions.tsx:137
msgid "Go to Build Orders"
msgstr ""
-#: src/defaults/actions.tsx:145
+#: src/defaults/actions.tsx:146
msgid "Go to System Settings"
msgstr ""
-#: src/defaults/actions.tsx:154
+#: src/defaults/actions.tsx:155
msgid "Go to the Admin Center"
msgstr "轉到管理中心"
+#: src/defaults/actions.tsx:164
+msgid "Manage InvenTree plugins"
+msgstr ""
+
#: src/defaults/dashboardItems.tsx:29
#~ msgid "Latest Parts"
#~ msgstr "Latest Parts"
@@ -4374,22 +4391,22 @@ msgstr ""
#~ msgid "Remove output"
#~ msgstr "Remove output"
-#: src/forms/BuildForms.tsx:333
-#: src/forms/BuildForms.tsx:408
-#: src/forms/BuildForms.tsx:685
+#: src/forms/BuildForms.tsx:337
+#: src/forms/BuildForms.tsx:412
+#: src/forms/BuildForms.tsx:694
#: src/tables/build/BuildAllocatedStockTable.tsx:147
#: src/tables/build/BuildOutputTable.tsx:582
#: src/tables/part/PartTestResultTable.tsx:280
msgid "Build Output"
msgstr "生產產出"
-#: src/forms/BuildForms.tsx:334
+#: src/forms/BuildForms.tsx:338
msgid "Quantity to Complete"
msgstr ""
-#: src/forms/BuildForms.tsx:336
-#: src/forms/BuildForms.tsx:411
-#: src/forms/BuildForms.tsx:475
+#: src/forms/BuildForms.tsx:340
+#: src/forms/BuildForms.tsx:415
+#: src/forms/BuildForms.tsx:484
#: src/forms/PurchaseOrderForms.tsx:769
#: src/forms/ReturnOrderForms.tsx:197
#: src/forms/ReturnOrderForms.tsx:244
@@ -4416,11 +4433,11 @@ msgstr ""
msgid "Status"
msgstr "狀態"
-#: src/forms/BuildForms.tsx:358
+#: src/forms/BuildForms.tsx:362
msgid "Complete Build Outputs"
msgstr "完成生產輸出"
-#: src/forms/BuildForms.tsx:361
+#: src/forms/BuildForms.tsx:365
msgid "Build outputs have been completed"
msgstr "生產已完成"
@@ -4428,24 +4445,24 @@ msgstr "生產已完成"
#~ msgid "Selected build outputs will be deleted"
#~ msgstr "Selected build outputs will be deleted"
-#: src/forms/BuildForms.tsx:409
+#: src/forms/BuildForms.tsx:413
msgid "Quantity to Scrap"
msgstr ""
-#: src/forms/BuildForms.tsx:429
-#: src/forms/BuildForms.tsx:431
+#: src/forms/BuildForms.tsx:433
+#: src/forms/BuildForms.tsx:435
msgid "Scrap Build Outputs"
msgstr "報廢生產輸出"
-#: src/forms/BuildForms.tsx:434
+#: src/forms/BuildForms.tsx:438
msgid "Selected build outputs will be completed, but marked as scrapped"
msgstr ""
-#: src/forms/BuildForms.tsx:436
+#: src/forms/BuildForms.tsx:440
msgid "Allocated stock items will be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:442
+#: src/forms/BuildForms.tsx:446
msgid "Build outputs have been scrapped"
msgstr "生產已完成"
@@ -4453,24 +4470,24 @@ msgstr "生產已完成"
#~ msgid "Remove line"
#~ msgstr "Remove line"
-#: src/forms/BuildForms.tsx:485
-#: src/forms/BuildForms.tsx:487
+#: src/forms/BuildForms.tsx:494
+#: src/forms/BuildForms.tsx:496
msgid "Cancel Build Outputs"
msgstr "取消生產輸出"
-#: src/forms/BuildForms.tsx:489
+#: src/forms/BuildForms.tsx:498
msgid "Selected build outputs will be removed"
msgstr ""
-#: src/forms/BuildForms.tsx:491
+#: src/forms/BuildForms.tsx:500
msgid "Allocated stock items will be returned to stock"
msgstr ""
-#: src/forms/BuildForms.tsx:498
+#: src/forms/BuildForms.tsx:507
msgid "Build outputs have been cancelled"
msgstr "生產已完成"
-#: src/forms/BuildForms.tsx:631
+#: src/forms/BuildForms.tsx:640
#: src/pages/build/BuildDetail.tsx:208
#: src/pages/company/ManufacturerPartDetail.tsx:84
#: src/pages/company/SupplierPartDetail.tsx:97
@@ -4492,30 +4509,30 @@ msgstr "生產已完成"
msgid "IPN"
msgstr "內部零件編碼 IPN"
-#: src/forms/BuildForms.tsx:632
-#: src/forms/BuildForms.tsx:796
-#: src/forms/BuildForms.tsx:897
+#: src/forms/BuildForms.tsx:641
+#: src/forms/BuildForms.tsx:805
+#: src/forms/BuildForms.tsx:906
#: src/forms/SalesOrderForms.tsx:385
-#: src/tables/build/BuildAllocatedStockTable.tsx:136
+#: src/tables/build/BuildAllocatedStockTable.tsx:129
#: src/tables/build/BuildLineTable.tsx:183
#: src/tables/sales/SalesOrderLineItemTable.tsx:342
#: src/tables/stock/StockItemTable.tsx:338
msgid "Allocated"
msgstr "已分配"
-#: src/forms/BuildForms.tsx:667
+#: src/forms/BuildForms.tsx:676
#: src/forms/SalesOrderForms.tsx:374
#: src/pages/build/BuildDetail.tsx:109
#: src/pages/build/BuildDetail.tsx:327
msgid "Source Location"
msgstr "來源地點"
-#: src/forms/BuildForms.tsx:668
+#: src/forms/BuildForms.tsx:677
#: src/forms/SalesOrderForms.tsx:375
msgid "Select the source location for the stock allocation"
msgstr "選擇分配庫存的源位置"
-#: src/forms/BuildForms.tsx:700
+#: src/forms/BuildForms.tsx:709
#: src/forms/SalesOrderForms.tsx:415
#: src/tables/build/BuildLineTable.tsx:575
#: src/tables/build/BuildLineTable.tsx:738
@@ -4525,13 +4542,18 @@ msgstr "選擇分配庫存的源位置"
msgid "Allocate Stock"
msgstr "分配庫存"
-#: src/forms/BuildForms.tsx:703
+#: src/forms/BuildForms.tsx:712
#: src/forms/SalesOrderForms.tsx:420
msgid "Stock items allocated"
msgstr "分配的庫存項目"
-#: src/forms/BuildForms.tsx:816
-#: src/forms/BuildForms.tsx:917
+#: src/forms/BuildForms.tsx:817
+#: src/forms/BuildForms.tsx:918
+#~ msgid "Stock items consumed"
+#~ msgstr "Stock items consumed"
+
+#: src/forms/BuildForms.tsx:825
+#: src/forms/BuildForms.tsx:926
#: src/tables/build/BuildAllocatedStockTable.tsx:243
#: src/tables/build/BuildAllocatedStockTable.tsx:279
#: src/tables/build/BuildLineTable.tsx:748
@@ -4539,23 +4561,18 @@ msgstr "分配的庫存項目"
msgid "Consume Stock"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
+#: src/forms/BuildForms.tsx:826
+#: src/forms/BuildForms.tsx:927
msgid "Stock items scheduled to be consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:817
-#: src/forms/BuildForms.tsx:918
-#~ msgid "Stock items consumed"
-#~ msgstr "Stock items consumed"
-
-#: src/forms/BuildForms.tsx:853
+#: src/forms/BuildForms.tsx:862
#: src/tables/build/BuildLineTable.tsx:515
#: src/tables/part/PartBuildAllocationsTable.tsx:101
msgid "Fully consumed"
msgstr ""
-#: src/forms/BuildForms.tsx:898
+#: src/forms/BuildForms.tsx:907
#: src/tables/build/BuildLineTable.tsx:188
#: src/tables/stock/StockItemTable.tsx:367
msgid "Consumed"
@@ -4572,8 +4589,12 @@ msgstr ""
#~ msgid "Company updated"
#~ msgstr "Company updated"
-#: src/forms/PartForms.tsx:99
-#: src/forms/PartForms.tsx:228
+#: src/forms/PartForms.tsx:108
+#~ msgid "Part created"
+#~ msgstr "Part created"
+
+#: src/forms/PartForms.tsx:109
+#: src/forms/PartForms.tsx:239
#: src/pages/part/CategoryDetail.tsx:127
#: src/pages/part/PartDetail.tsx:668
#: src/tables/part/PartCategoryTable.tsx:94
@@ -4581,23 +4602,19 @@ msgstr ""
msgid "Subscribed"
msgstr "已訂閲"
-#: src/forms/PartForms.tsx:100
+#: src/forms/PartForms.tsx:110
msgid "Subscribe to notifications for this part"
msgstr ""
-#: src/forms/PartForms.tsx:108
-#~ msgid "Part created"
-#~ msgstr "Part created"
-
#: src/forms/PartForms.tsx:129
#~ msgid "Part updated"
#~ msgstr "Part updated"
-#: src/forms/PartForms.tsx:214
+#: src/forms/PartForms.tsx:225
msgid "Parent part category"
msgstr "上級零件類別"
-#: src/forms/PartForms.tsx:229
+#: src/forms/PartForms.tsx:240
msgid "Subscribe to notifications for this category"
msgstr ""
@@ -4690,8 +4707,8 @@ msgstr "存儲已收到的庫存"
#: src/pages/stock/StockDetail.tsx:280
#: src/pages/stock/StockDetail.tsx:952
#: src/tables/Filter.tsx:83
-#: src/tables/build/BuildAllocatedStockTable.tsx:125
-#: src/tables/build/BuildOutputTable.tsx:112
+#: src/tables/build/BuildAllocatedStockTable.tsx:118
+#: src/tables/build/BuildOutputTable.tsx:111
#: src/tables/part/PartTestResultTable.tsx:268
#: src/tables/part/PartTestResultTable.tsx:289
#: src/tables/sales/SalesOrderAllocationTable.tsx:149
@@ -4854,145 +4871,145 @@ msgstr "退貨"
msgid "Count"
msgstr "總計"
-#: src/forms/StockForms.tsx:1262
+#: src/forms/StockForms.tsx:1286
#: src/hooks/UseStockAdjustActions.tsx:108
msgid "Add Stock"
msgstr "添加庫存"
-#: src/forms/StockForms.tsx:1263
+#: src/forms/StockForms.tsx:1287
msgid "Stock added"
msgstr ""
-#: src/forms/StockForms.tsx:1266
+#: src/forms/StockForms.tsx:1290
msgid "Increase the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1277
+#: src/forms/StockForms.tsx:1301
#: src/hooks/UseStockAdjustActions.tsx:118
msgid "Remove Stock"
msgstr "移除庫存"
-#: src/forms/StockForms.tsx:1278
+#: src/forms/StockForms.tsx:1302
msgid "Stock removed"
msgstr ""
-#: src/forms/StockForms.tsx:1281
+#: src/forms/StockForms.tsx:1305
msgid "Decrease the quantity of the selected stock items by a given amount."
msgstr ""
-#: src/forms/StockForms.tsx:1292
+#: src/forms/StockForms.tsx:1316
#: src/hooks/UseStockAdjustActions.tsx:128
msgid "Transfer Stock"
msgstr "轉移庫存"
-#: src/forms/StockForms.tsx:1293
+#: src/forms/StockForms.tsx:1317
msgid "Stock transferred"
msgstr ""
-#: src/forms/StockForms.tsx:1296
+#: src/forms/StockForms.tsx:1320
msgid "Transfer selected items to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1307
+#: src/forms/StockForms.tsx:1331
#: src/hooks/UseStockAdjustActions.tsx:168
msgid "Return Stock"
msgstr ""
-#: src/forms/StockForms.tsx:1308
+#: src/forms/StockForms.tsx:1332
msgid "Stock returned"
msgstr ""
-#: src/forms/StockForms.tsx:1311
+#: src/forms/StockForms.tsx:1335
msgid "Return selected items into stock, to the specified location."
msgstr ""
-#: src/forms/StockForms.tsx:1322
+#: src/forms/StockForms.tsx:1346
#: src/hooks/UseStockAdjustActions.tsx:98
msgid "Count Stock"
msgstr "庫存數量"
-#: src/forms/StockForms.tsx:1323
+#: src/forms/StockForms.tsx:1347
msgid "Stock counted"
msgstr ""
-#: src/forms/StockForms.tsx:1326
+#: src/forms/StockForms.tsx:1350
msgid "Count the selected stock items, and adjust the quantity accordingly."
msgstr ""
-#: src/forms/StockForms.tsx:1337
+#: src/forms/StockForms.tsx:1361
msgid "Change Stock Status"
msgstr "更改庫存狀態"
-#: src/forms/StockForms.tsx:1338
+#: src/forms/StockForms.tsx:1362
msgid "Stock status changed"
msgstr ""
-#: src/forms/StockForms.tsx:1341
+#: src/forms/StockForms.tsx:1365
msgid "Change the status of the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1352
+#: src/forms/StockForms.tsx:1376
#: src/hooks/UseStockAdjustActions.tsx:138
msgid "Merge Stock"
msgstr "合併庫存"
-#: src/forms/StockForms.tsx:1353
+#: src/forms/StockForms.tsx:1377
msgid "Stock merged"
msgstr ""
-#: src/forms/StockForms.tsx:1355
+#: src/forms/StockForms.tsx:1379
msgid "Merge Stock Items"
msgstr ""
-#: src/forms/StockForms.tsx:1357
+#: src/forms/StockForms.tsx:1381
msgid "Merge operation cannot be reversed"
msgstr ""
-#: src/forms/StockForms.tsx:1358
+#: src/forms/StockForms.tsx:1382
msgid "Tracking information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1359
+#: src/forms/StockForms.tsx:1383
msgid "Supplier information may be lost when merging items"
msgstr ""
-#: src/forms/StockForms.tsx:1377
+#: src/forms/StockForms.tsx:1401
msgid "Assign Stock to Customer"
msgstr ""
-#: src/forms/StockForms.tsx:1378
+#: src/forms/StockForms.tsx:1402
msgid "Stock assigned to customer"
msgstr ""
-#: src/forms/StockForms.tsx:1388
+#: src/forms/StockForms.tsx:1412
msgid "Delete Stock Items"
msgstr "刪除庫存項"
-#: src/forms/StockForms.tsx:1389
+#: src/forms/StockForms.tsx:1413
msgid "Stock deleted"
msgstr ""
-#: src/forms/StockForms.tsx:1392
+#: src/forms/StockForms.tsx:1416
msgid "This operation will permanently delete the selected stock items."
msgstr ""
-#: src/forms/StockForms.tsx:1401
+#: src/forms/StockForms.tsx:1425
msgid "Parent stock location"
msgstr "上級庫存地點"
-#: src/forms/StockForms.tsx:1528
+#: src/forms/StockForms.tsx:1552
msgid "Find Serial Number"
msgstr ""
-#: src/forms/StockForms.tsx:1539
+#: src/forms/StockForms.tsx:1563
msgid "No matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1545
+#: src/forms/StockForms.tsx:1569
msgid "Multiple matching items"
msgstr ""
-#: src/forms/StockForms.tsx:1554
+#: src/forms/StockForms.tsx:1578
msgid "Invalid response from server"
msgstr ""
@@ -5062,99 +5079,110 @@ msgstr ""
#~ msgid "You have been logged out"
#~ msgstr "You have been logged out"
-#: src/functions/auth.tsx:123
-#: src/functions/auth.tsx:344
-msgid "Already logged in"
-msgstr ""
-
#: src/functions/auth.tsx:124
-#: src/functions/auth.tsx:345
-msgid "There is a conflicting session on the server for this browser. Please logout of that first."
-msgstr ""
+#: src/functions/auth.tsx:216
+msgid "Logged Out"
+msgstr "已登出"
-#: src/functions/auth.tsx:142
-msgid "No response from server."
+#: src/functions/auth.tsx:125
+msgid "There was a conflicting session for this browser, which has been logged out."
msgstr ""
#: src/functions/auth.tsx:142
#~ msgid "Found an existing login - using it to log you in."
#~ msgstr "Found an existing login - using it to log you in."
+#: src/functions/auth.tsx:143
+msgid "No response from server."
+msgstr ""
+
#: src/functions/auth.tsx:143
#~ msgid "Found an existing login - welcome back!"
#~ msgstr "Found an existing login - welcome back!"
-#: src/functions/auth.tsx:179
+#: src/functions/auth.tsx:186
msgid "MFA Login successful"
msgstr ""
-#: src/functions/auth.tsx:180
+#: src/functions/auth.tsx:187
msgid "MFA details were automatically provided in the browser"
msgstr ""
-#: src/functions/auth.tsx:209
-msgid "Logged Out"
-msgstr "已登出"
-
-#: src/functions/auth.tsx:210
+#: src/functions/auth.tsx:217
msgid "Successfully logged out"
msgstr "已成功登出"
-#: src/functions/auth.tsx:249
+#: src/functions/auth.tsx:276
msgid "Language changed"
msgstr ""
-#: src/functions/auth.tsx:250
+#: src/functions/auth.tsx:277
msgid "Your active language has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:270
+#: src/functions/auth.tsx:297
msgid "Theme changed"
msgstr ""
-#: src/functions/auth.tsx:271
+#: src/functions/auth.tsx:298
msgid "Your active theme has been changed to the one set in your profile"
msgstr ""
-#: src/functions/auth.tsx:305
+#: src/functions/auth.tsx:332
msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too."
msgstr "查看收件箱中的重置鏈接。這隻有在您有賬户的情況下才會起作用。也請檢查垃圾郵件。"
-#: src/functions/auth.tsx:312
-#: src/functions/auth.tsx:569
+#: src/functions/auth.tsx:339
+#: src/functions/auth.tsx:603
msgid "Reset failed"
msgstr "重置失敗"
-#: src/functions/auth.tsx:401
+#: src/functions/auth.tsx:366
+msgid "Already logged in"
+msgstr ""
+
+#: src/functions/auth.tsx:367
+msgid "There is a conflicting session on the server for this browser. Please logout of that first."
+msgstr ""
+
+#: src/functions/auth.tsx:423
msgid "Logged In"
msgstr "已登錄"
-#: src/functions/auth.tsx:402
+#: src/functions/auth.tsx:424
msgid "Successfully logged in"
msgstr "已成功登入"
-#: src/functions/auth.tsx:529
+#: src/functions/auth.tsx:558
msgid "Failed to set up MFA"
msgstr ""
-#: src/functions/auth.tsx:559
+#: src/functions/auth.tsx:577
+msgid "MFA Setup successful"
+msgstr ""
+
+#: src/functions/auth.tsx:578
+msgid "MFA via TOTP has been set up successfully; you will need to login again."
+msgstr ""
+
+#: src/functions/auth.tsx:593
msgid "Password set"
msgstr "密碼已設置"
-#: src/functions/auth.tsx:560
-#: src/functions/auth.tsx:669
+#: src/functions/auth.tsx:594
+#: src/functions/auth.tsx:703
msgid "The password was set successfully. You can now login with your new password"
msgstr "密碼設置成功。您現在可以使用新密碼登錄"
-#: src/functions/auth.tsx:634
+#: src/functions/auth.tsx:668
msgid "Password could not be changed"
msgstr ""
-#: src/functions/auth.tsx:652
+#: src/functions/auth.tsx:686
msgid "The two password fields didn’t match"
msgstr ""
-#: src/functions/auth.tsx:668
+#: src/functions/auth.tsx:702
msgid "Password Changed"
msgstr ""
@@ -5210,11 +5238,11 @@ msgstr "請求已超時"
msgid "Exporting Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:109
+#: src/hooks/UseDataExport.tsx:111
msgid "Export Data"
msgstr ""
-#: src/hooks/UseDataExport.tsx:112
+#: src/hooks/UseDataExport.tsx:114
msgid "Export"
msgstr ""
@@ -5300,7 +5328,7 @@ msgid "Delete selected stock items"
msgstr ""
#: src/hooks/UseStockAdjustActions.tsx:205
-#: src/pages/part/PartDetail.tsx:1158
+#: src/pages/part/PartDetail.tsx:1164
msgid "Stock Actions"
msgstr "庫存操作"
@@ -5383,12 +5411,12 @@ msgstr "沒有帳户?"
#~ msgstr "Enter your TOTP or recovery code"
#: src/pages/Auth/MFA.tsx:29
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:77
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86
msgid "Multi-Factor Authentication"
msgstr ""
#: src/pages/Auth/MFA.tsx:33
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:217
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
msgid "TOTP Code"
msgstr ""
@@ -5886,7 +5914,7 @@ msgid "Position"
msgstr ""
#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:90
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:953
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:967
msgid "Type"
msgstr ""
@@ -5933,220 +5961,220 @@ msgstr ""
msgid "{0}"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:103
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:105
msgid "Reauthentication Succeeded"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:104
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:106
msgid "You have been reauthenticated successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:112
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:114
msgid "Error during reauthentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:115
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:117
msgid "Reauthentication Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:116
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:118
msgid "Failed to reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:131
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:171
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:173
msgid "Reauthenticate"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:133
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:135
msgid "Reauthentiction is required to continue."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:195
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:197
msgid "Enter your password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:219
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:221
msgid "Enter one of your TOTP codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:271
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:273
msgid "WebAuthn Credential Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:272
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:274
msgid "WebAuthn credential removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:281
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:283
msgid "Error removing WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:302
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:304
msgid "Remove WebAuthn Credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:310
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:401
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
#: src/tables/build/BuildAllocatedStockTable.tsx:181
#: src/tables/build/BuildLineTable.tsx:668
#: src/tables/sales/SalesOrderAllocationTable.tsx:220
msgid "Confirm Removal"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:312
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:314
msgid "Confirm removal of webauth credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:364
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:366
msgid "TOTP Removed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:365
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:367
msgid "TOTP token removed successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:375
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:377
msgid "Error removing TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:394
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:396
msgid "Remove TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:403
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:405
msgid "Confirm removal of TOTP code"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:463
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:465
msgid "TOTP Already Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:464
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:466
msgid "A TOTP token is already registered for this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:479
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:481
msgid "Error Fetching TOTP Registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:480
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:482
msgid "An unexpected error occurred while fetching TOTP registration data."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:522
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:524
msgid "TOTP Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:523
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:525
msgid "TOTP token registered successfully."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:532
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:534
msgid "Error registering TOTP token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:551
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:553
msgid "Register TOTP Token"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:596
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:598
msgid "Error fetching recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:632
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:648
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:852
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:634
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:866
msgid "Recovery Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:650
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:652
msgid "The following one time recovery codes are available for use"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:667
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:669
msgid "Copy recovery codes to clipboard"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:677
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
msgid "No Unused Codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:679
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:681
msgid "There are no available recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:768
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
msgid "WebAuthn Registered"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:769
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:783
msgid "WebAuthn credential registered successfully"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:778
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:792
msgid "Error registering WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:781
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:795
msgid "WebAuthn Registration Failed"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:782
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:796
msgid "Failed to register WebAuthn credential"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:805
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:819
msgid "Error fetching WebAuthn registration"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:845
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
msgid "TOTP"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:846
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
msgid "Time-based One-Time Password"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:853
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:867
msgid "One-Time pre-generated recovery codes"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:859
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:873
msgid "WebAuthn"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:860
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:874
msgid "Web Authentication (WebAuthn) is a web standard for secure authentication"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:956
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
msgid "Last used at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:959
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:973
msgid "Created at"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:970
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:348
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:984
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:204
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:362
msgid "Not Configured"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:974
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:988
msgid "No multi-factor tokens configured for this account"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:979
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:993
msgid "Register Authentication Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:995
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1009
msgid "No MFA Methods Available"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:999
+#: src/pages/Index/Settings/AccountSettings/MFASettings.tsx:1013
msgid "There are no MFA methods available for configuration"
msgstr ""
@@ -6162,47 +6190,47 @@ msgstr ""
msgid "Enter the TOTP code to ensure it registered correctly"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51
-msgid "Email Addresses"
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55
#~ msgid "Single Sign On Accounts"
#~ msgstr "Single Sign On Accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:59
-msgid "Single Sign On"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60
+msgid "Email Addresses"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:67
-msgid "Not enabled"
-msgstr "未啓用"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68
+msgid "Single Sign On"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69
#~ msgid "Multifactor"
#~ msgstr "Multifactor"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:70
-msgid "Single Sign On is not enabled for this server "
-msgstr ""
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71
#~ msgid "Single Sign On is not enabled for this server"
#~ msgstr "Single Sign On is not enabled for this server"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:76
+msgid "Not enabled"
+msgstr "未啓用"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:79
+msgid "Single Sign On is not enabled for this server "
+msgstr ""
+
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83
#~ msgid "Multifactor authentication is not configured for your account"
#~ msgstr "Multifactor authentication is not configured for your account"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:85
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
msgid "Access Tokens"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:94
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:108
msgid "Session Information"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:132
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:146
#: src/tables/general/BarcodeScanTable.tsx:60
#: src/tables/settings/BarcodeScanHistoryTable.tsx:75
#: src/tables/settings/EmailTable.tsx:131
@@ -6210,61 +6238,57 @@ msgstr ""
msgid "Timestamp"
msgstr "時間戳"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:133
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:147
msgid "Method"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:190
msgid "Error while updating email"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:193
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:207
msgid "Currently no email addresses are registered."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:215
msgid "The following email addresses are associated with your account:"
msgstr "以下電子郵件地址與您的賬户相關聯:"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:214
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:228
msgid "Primary"
msgstr "主要的"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:219
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:233
msgid "Verified"
msgstr "已驗證"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:237
msgid "Unverified"
msgstr "未驗證"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:241
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:255
msgid "Make Primary"
msgstr "設為首選"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:247
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
msgid "Re-send Verification"
msgstr "重新發送驗證"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:261
-msgid "Add Email Address"
-msgstr "添加電子郵件地址"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:263
-msgid "E-Mail"
-msgstr "郵箱"
-
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:264
-msgid "E-Mail address"
-msgstr "郵箱地址"
-
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270
#~ msgid "Provider has not been configured"
#~ msgstr "Provider has not been configured"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:276
-msgid "Error while adding email"
-msgstr ""
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:275
+msgid "Add Email Address"
+msgstr "添加電子郵件地址"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:277
+msgid "E-Mail"
+msgstr "郵箱"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:278
+msgid "E-Mail address"
+msgstr "郵箱地址"
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280
#~ msgid "Not configured"
@@ -6274,23 +6298,27 @@ msgstr ""
#~ msgid "There are no social network accounts connected to this account."
#~ msgstr "There are no social network accounts connected to this account."
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:287
-msgid "Add Email"
-msgstr "添加電子郵件"
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:290
+msgid "Error while adding email"
+msgstr ""
#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293
#~ msgid "You can sign in to your account using any of the following third party accounts"
#~ msgstr "You can sign in to your account using any of the following third party accounts"
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:351
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:301
+msgid "Add Email"
+msgstr "添加電子郵件"
+
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:365
msgid "There are no providers connected to this account."
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:360
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:374
msgid "You can sign in to your account using any of the following providers"
msgstr ""
-#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:373
+#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:387
msgid "Remove Provider Link"
msgstr ""
@@ -6921,7 +6949,7 @@ msgstr ""
#: src/pages/build/BuildDetail.tsx:238
#: src/pages/build/BuildDetail.tsx:728
#: src/pages/build/BuildIndex.tsx:34
-#: src/pages/stock/LocationDetail.tsx:140
+#: src/pages/stock/LocationDetail.tsx:149
#: src/tables/build/BuildOrderTable.tsx:123
#: src/tables/build/BuildOrderTable.tsx:183
#: src/tables/stock/StockLocationTable.tsx:48
@@ -7058,7 +7086,7 @@ msgid "Child Build Orders"
msgstr "子生產訂單"
#: src/pages/build/BuildDetail.tsx:514
-#: src/pages/part/PartDetail.tsx:926
+#: src/pages/part/PartDetail.tsx:929
#: src/pages/stock/StockDetail.tsx:587
#: src/tables/build/BuildOutputTable.tsx:654
#: src/tables/stock/StockItemTestResultTable.tsx:173
@@ -7225,6 +7253,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:61
#: src/pages/sales/SalesIndex.tsx:107
#: src/pages/sales/SalesIndex.tsx:140
+#: src/pages/stock/LocationDetail.tsx:193
msgid "Table View"
msgstr ""
@@ -7245,6 +7274,7 @@ msgstr ""
#: src/pages/sales/SalesIndex.tsx:79
#: src/pages/sales/SalesIndex.tsx:125
#: src/pages/sales/SalesIndex.tsx:151
+#: src/pages/stock/LocationDetail.tsx:199
msgid "Parametric View"
msgstr ""
@@ -7349,7 +7379,7 @@ msgstr "外部鏈接"
#: src/pages/company/ManufacturerPartDetail.tsx:147
#: src/pages/company/SupplierPartDetail.tsx:233
-#: src/pages/part/PartDetail.tsx:787
+#: src/pages/part/PartDetail.tsx:790
msgid "Part Details"
msgstr "零件詳情"
@@ -7448,7 +7478,7 @@ msgid "Add Supplier Part"
msgstr "添加供應商零件"
#: src/pages/company/SupplierPartDetail.tsx:393
-#: src/pages/part/PartDetail.tsx:1018
+#: src/pages/part/PartDetail.tsx:1021
msgid "No Stock"
msgstr "無庫存"
@@ -7496,7 +7526,7 @@ msgid "Basic user"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:103
-#: src/pages/stock/LocationDetail.tsx:94
+#: src/pages/stock/LocationDetail.tsx:103
#: src/tables/settings/ErrorTable.tsx:63
#: src/tables/settings/ErrorTable.tsx:108
msgid "Path"
@@ -7512,7 +7542,7 @@ msgid "Subcategories"
msgstr "子類別"
#: src/pages/part/CategoryDetail.tsx:149
-#: src/pages/stock/LocationDetail.tsx:134
+#: src/pages/stock/LocationDetail.tsx:143
#: src/tables/part/PartCategoryTable.tsx:89
#: src/tables/stock/StockLocationTable.tsx:43
msgid "Structural"
@@ -7541,7 +7571,7 @@ msgid "Move items to parent category"
msgstr ""
#: src/pages/part/CategoryDetail.tsx:196
-#: src/pages/stock/LocationDetail.tsx:226
+#: src/pages/stock/LocationDetail.tsx:262
msgid "Delete items"
msgstr "刪除項"
@@ -7754,7 +7784,7 @@ msgid "Saleable Part"
msgstr "可銷售零件"
#: src/pages/part/PartDetail.tsx:663
-#: src/pages/part/PartDetail.tsx:1054
+#: src/pages/part/PartDetail.tsx:1057
#: src/tables/bom/BomTable.tsx:150
#: src/tables/bom/BomTable.tsx:434
msgid "Virtual Part"
@@ -7778,117 +7808,117 @@ msgstr "創建人"
msgid "Default Supplier"
msgstr "默認供應商"
-#: src/pages/part/PartDetail.tsx:704
+#: src/pages/part/PartDetail.tsx:707
msgid "Default Expiry"
msgstr ""
-#: src/pages/part/PartDetail.tsx:709
+#: src/pages/part/PartDetail.tsx:712
msgid "days"
msgstr ""
-#: src/pages/part/PartDetail.tsx:719
-#: src/pages/part/pricing/BomPricingPanel.tsx:79
+#: src/pages/part/PartDetail.tsx:722
+#: src/pages/part/pricing/BomPricingPanel.tsx:78
#: src/pages/part/pricing/VariantPricingPanel.tsx:95
#: src/tables/part/PartTable.tsx:179
msgid "Price Range"
msgstr "價格範圍"
-#: src/pages/part/PartDetail.tsx:729
+#: src/pages/part/PartDetail.tsx:732
msgid "Latest Serial Number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:757
+#: src/pages/part/PartDetail.tsx:760
msgid "Select Part Revision"
msgstr "選擇零件版本"
-#: src/pages/part/PartDetail.tsx:812
+#: src/pages/part/PartDetail.tsx:815
msgid "Variants"
msgstr "變體"
-#: src/pages/part/PartDetail.tsx:819
+#: src/pages/part/PartDetail.tsx:822
#: src/pages/stock/StockDetail.tsx:542
msgid "Allocations"
msgstr "分配"
-#: src/pages/part/PartDetail.tsx:826
+#: src/pages/part/PartDetail.tsx:829
msgid "Bill of Materials"
msgstr "物料清單"
-#: src/pages/part/PartDetail.tsx:838
+#: src/pages/part/PartDetail.tsx:841
msgid "Used In"
msgstr "用於"
-#: src/pages/part/PartDetail.tsx:845
+#: src/pages/part/PartDetail.tsx:848
msgid "Part Pricing"
msgstr "零件價格"
-#: src/pages/part/PartDetail.tsx:915
+#: src/pages/part/PartDetail.tsx:918
msgid "Test Templates"
msgstr "測試模板"
-#: src/pages/part/PartDetail.tsx:937
+#: src/pages/part/PartDetail.tsx:940
msgid "Related Parts"
msgstr "關聯零件"
-#: src/pages/part/PartDetail.tsx:949
+#: src/pages/part/PartDetail.tsx:952
#: src/tables/ColumnRenderers.tsx:73
#: src/tables/bom/BomTable.tsx:657
#: src/tables/part/PartTestTemplateTable.tsx:258
msgid "Part is Locked"
msgstr "零件已鎖定"
-#: src/pages/part/PartDetail.tsx:954
-msgid "Part parameters cannot be edited, as the part is locked"
-msgstr "零件參數無法編輯,因為零件已鎖定"
-
#: src/pages/part/PartDetail.tsx:956
#~ msgid "Count part stock"
#~ msgstr "Count part stock"
+#: src/pages/part/PartDetail.tsx:957
+msgid "Part parameters cannot be edited, as the part is locked"
+msgstr "零件參數無法編輯,因為零件已鎖定"
+
#: src/pages/part/PartDetail.tsx:967
#~ msgid "Transfer part stock"
#~ msgstr "Transfer part stock"
-#: src/pages/part/PartDetail.tsx:1024
+#: src/pages/part/PartDetail.tsx:1027
#: src/tables/part/PartTestTemplateTable.tsx:112
#: src/tables/stock/StockItemTestResultTable.tsx:404
msgid "Required"
msgstr "必填"
-#: src/pages/part/PartDetail.tsx:1042
+#: src/pages/part/PartDetail.tsx:1045
msgid "Deficit"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1079
+#: src/pages/part/PartDetail.tsx:1085
#: src/tables/part/PartTable.tsx:396
#: src/tables/part/PartTable.tsx:449
msgid "Add Part"
msgstr "添加零件"
-#: src/pages/part/PartDetail.tsx:1093
+#: src/pages/part/PartDetail.tsx:1099
msgid "Delete Part"
msgstr "刪除零件"
-#: src/pages/part/PartDetail.tsx:1102
+#: src/pages/part/PartDetail.tsx:1108
msgid "Deleting this part cannot be reversed"
msgstr "刪除此零件無法撤銷"
-#: src/pages/part/PartDetail.tsx:1164
+#: src/pages/part/PartDetail.tsx:1170
#: src/pages/stock/StockDetail.tsx:883
msgid "Order"
msgstr "訂單"
-#: src/pages/part/PartDetail.tsx:1165
+#: src/pages/part/PartDetail.tsx:1171
#: src/pages/stock/StockDetail.tsx:884
#: src/tables/build/BuildLineTable.tsx:768
msgid "Order Stock"
msgstr "訂單庫存"
-#: src/pages/part/PartDetail.tsx:1177
+#: src/pages/part/PartDetail.tsx:1183
msgid "Search by serial number"
msgstr ""
-#: src/pages/part/PartDetail.tsx:1185
+#: src/pages/part/PartDetail.tsx:1191
#: src/tables/part/PartTable.tsx:506
msgid "Part Actions"
msgstr "零件選項"
@@ -8008,8 +8038,8 @@ msgstr "最大值"
#~ msgid "New Stocktake Report"
#~ msgstr "New Stocktake Report"
-#: src/pages/part/pricing/BomPricingPanel.tsx:58
-#: src/pages/part/pricing/BomPricingPanel.tsx:136
+#: src/pages/part/pricing/BomPricingPanel.tsx:57
+#: src/pages/part/pricing/BomPricingPanel.tsx:135
#: src/tables/ColumnRenderers.tsx:552
#: src/tables/bom/BomTable.tsx:282
#: src/tables/general/ExtraLineItemTable.tsx:72
@@ -8021,20 +8051,20 @@ msgstr "最大值"
msgid "Total Price"
msgstr "總價"
-#: src/pages/part/pricing/BomPricingPanel.tsx:78
-#: src/pages/part/pricing/BomPricingPanel.tsx:102
+#: src/pages/part/pricing/BomPricingPanel.tsx:77
+#: src/pages/part/pricing/BomPricingPanel.tsx:101
#: src/tables/bom/UsedInTable.tsx:54
#: src/tables/part/PartTable.tsx:227
msgid "Component"
msgstr "組件"
-#: src/pages/part/pricing/BomPricingPanel.tsx:81
+#: src/pages/part/pricing/BomPricingPanel.tsx:80
#: src/pages/part/pricing/VariantPricingPanel.tsx:35
#: src/pages/part/pricing/VariantPricingPanel.tsx:97
msgid "Minimum Price"
msgstr "最低價格"
-#: src/pages/part/pricing/BomPricingPanel.tsx:82
+#: src/pages/part/pricing/BomPricingPanel.tsx:81
#: src/pages/part/pricing/VariantPricingPanel.tsx:43
#: src/pages/part/pricing/VariantPricingPanel.tsx:98
msgid "Maximum Price"
@@ -8048,7 +8078,7 @@ msgstr "最高價格"
#~ msgid "Maximum Total Price"
#~ msgstr "Maximum Total Price"
-#: src/pages/part/pricing/BomPricingPanel.tsx:127
+#: src/pages/part/pricing/BomPricingPanel.tsx:126
#: src/pages/part/pricing/PriceBreakPanel.tsx:173
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:71
#: src/pages/part/pricing/PurchaseHistoryPanel.tsx:126
@@ -8062,11 +8092,11 @@ msgstr "最高價格"
msgid "Unit Price"
msgstr "單價"
-#: src/pages/part/pricing/BomPricingPanel.tsx:217
+#: src/pages/part/pricing/BomPricingPanel.tsx:216
msgid "Pie Chart"
msgstr "餅狀圖"
-#: src/pages/part/pricing/BomPricingPanel.tsx:218
+#: src/pages/part/pricing/BomPricingPanel.tsx:217
msgid "Bar Chart"
msgstr "柱狀圖"
@@ -8543,94 +8573,94 @@ msgstr ""
msgid "Mark shipment as unchecked"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:110
+#: src/pages/stock/LocationDetail.tsx:119
msgid "Parent Location"
msgstr "上級地點"
-#: src/pages/stock/LocationDetail.tsx:128
-#: src/pages/stock/LocationDetail.tsx:174
+#: src/pages/stock/LocationDetail.tsx:137
+#: src/pages/stock/LocationDetail.tsx:185
msgid "Sublocations"
msgstr "次級地點"
-#: src/pages/stock/LocationDetail.tsx:146
+#: src/pages/stock/LocationDetail.tsx:155
#: src/tables/stock/StockLocationTable.tsx:57
msgid "Location Type"
msgstr "位置類型"
-#: src/pages/stock/LocationDetail.tsx:157
+#: src/pages/stock/LocationDetail.tsx:166
msgid "Top level stock location"
msgstr "最高級庫存位置"
-#: src/pages/stock/LocationDetail.tsx:168
+#: src/pages/stock/LocationDetail.tsx:179
msgid "Location Details"
msgstr "位置詳細信息"
-#: src/pages/stock/LocationDetail.tsx:194
+#: src/pages/stock/LocationDetail.tsx:225
msgid "Default Parts"
msgstr "默認零件"
-#: src/pages/stock/LocationDetail.tsx:213
-#: src/pages/stock/LocationDetail.tsx:374
-#: src/tables/stock/StockLocationTable.tsx:121
-msgid "Edit Stock Location"
-msgstr "編輯庫存地點"
-
-#: src/pages/stock/LocationDetail.tsx:222
-msgid "Move items to parent location"
-msgstr ""
-
-#: src/pages/stock/LocationDetail.tsx:234
-#: src/pages/stock/LocationDetail.tsx:379
-msgid "Delete Stock Location"
-msgstr "刪除庫存地點"
-
-#: src/pages/stock/LocationDetail.tsx:237
-msgid "Items Action"
-msgstr "項目操作"
-
-#: src/pages/stock/LocationDetail.tsx:239
-msgid "Action for stock items in this location"
-msgstr "對此位置中的庫存物品執行的操作"
-
#: src/pages/stock/LocationDetail.tsx:243
#~ msgid "Child Locations Action"
#~ msgstr "Child Locations Action"
-#: src/pages/stock/LocationDetail.tsx:244
+#: src/pages/stock/LocationDetail.tsx:249
+#: src/pages/stock/LocationDetail.tsx:410
+#: src/tables/stock/StockLocationTable.tsx:121
+msgid "Edit Stock Location"
+msgstr "編輯庫存地點"
+
+#: src/pages/stock/LocationDetail.tsx:258
+msgid "Move items to parent location"
+msgstr ""
+
+#: src/pages/stock/LocationDetail.tsx:270
+#: src/pages/stock/LocationDetail.tsx:415
+msgid "Delete Stock Location"
+msgstr "刪除庫存地點"
+
+#: src/pages/stock/LocationDetail.tsx:273
+msgid "Items Action"
+msgstr "項目操作"
+
+#: src/pages/stock/LocationDetail.tsx:275
+msgid "Action for stock items in this location"
+msgstr "對此位置中的庫存物品執行的操作"
+
+#: src/pages/stock/LocationDetail.tsx:280
msgid "Locations Action"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:246
+#: src/pages/stock/LocationDetail.tsx:282
msgid "Action for child locations in this location"
msgstr "對此位置中的子位置執行的操作"
-#: src/pages/stock/LocationDetail.tsx:280
+#: src/pages/stock/LocationDetail.tsx:316
msgid "Scan Stock Item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:298
+#: src/pages/stock/LocationDetail.tsx:334
#: src/pages/stock/StockDetail.tsx:812
msgid "Scanned stock item into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:304
+#: src/pages/stock/LocationDetail.tsx:340
#: src/pages/stock/StockDetail.tsx:818
msgid "Error scanning stock item"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:311
+#: src/pages/stock/LocationDetail.tsx:347
msgid "Scan Stock Location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:323
+#: src/pages/stock/LocationDetail.tsx:359
msgid "Scanned stock location into location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:329
+#: src/pages/stock/LocationDetail.tsx:365
msgid "Error scanning stock location"
msgstr ""
-#: src/pages/stock/LocationDetail.tsx:370
+#: src/pages/stock/LocationDetail.tsx:406
#: src/tables/stock/StockLocationTable.tsx:142
msgid "Location Actions"
msgstr "位置操作"
@@ -8917,6 +8947,7 @@ msgstr "顯示帶有序列號的項目"
#~ msgstr "Show overdue orders"
#: src/tables/Filter.tsx:108
+#: src/tables/build/BuildAllocatedStockTable.tsx:134
msgid "Serial"
msgstr ""
@@ -9139,12 +9170,12 @@ msgstr "添加過濾條件"
msgid "Clear Filters"
msgstr "清除篩選"
-#: src/tables/InvenTreeTable.tsx:45
-#: src/tables/InvenTreeTable.tsx:488
+#: src/tables/InvenTreeTable.tsx:46
+#: src/tables/InvenTreeTable.tsx:481
msgid "No records found"
msgstr "沒有找到記錄"
-#: src/tables/InvenTreeTable.tsx:152
+#: src/tables/InvenTreeTable.tsx:153
msgid "Error loading table options"
msgstr ""
@@ -9156,7 +9187,7 @@ msgstr ""
#~ msgid "Are you sure you want to delete the selected records?"
#~ msgstr "Are you sure you want to delete the selected records?"
-#: src/tables/InvenTreeTable.tsx:529
+#: src/tables/InvenTreeTable.tsx:522
msgid "Server returned incorrect data type"
msgstr "服務器返回了錯誤的數據類型"
@@ -9176,7 +9207,7 @@ msgstr "服務器返回了錯誤的數據類型"
#~ msgid "This action cannot be undone!"
#~ msgstr "This action cannot be undone!"
-#: src/tables/InvenTreeTable.tsx:562
+#: src/tables/InvenTreeTable.tsx:555
msgid "Error loading table data"
msgstr ""
@@ -9190,11 +9221,11 @@ msgstr ""
#~ msgid "Barcode actions"
#~ msgstr "Barcode actions"
-#: src/tables/InvenTreeTable.tsx:691
+#: src/tables/InvenTreeTable.tsx:684
msgid "View details"
msgstr ""
-#: src/tables/InvenTreeTable.tsx:694
+#: src/tables/InvenTreeTable.tsx:687
msgid "View {model}"
msgstr ""
@@ -9788,7 +9819,7 @@ msgstr ""
#~ msgid "Filter by user who issued this order"
#~ msgstr "Filter by user who issued this order"
-#: src/tables/build/BuildOutputTable.tsx:100
+#: src/tables/build/BuildOutputTable.tsx:99
msgid "Build Output Stock Allocation"
msgstr ""
@@ -10049,7 +10080,7 @@ msgstr ""
#: src/tables/general/ExtraLineItemTable.tsx:95
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:300
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:405
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:406
#: src/tables/sales/ReturnOrderLineItemTable.tsx:83
#: src/tables/sales/ReturnOrderLineItemTable.tsx:187
#: src/tables/sales/SalesOrderLineItemTable.tsx:252
@@ -10058,14 +10089,14 @@ msgid "Add Line Item"
msgstr "添加行項目"
#: src/tables/general/ExtraLineItemTable.tsx:108
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:322
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:323
#: src/tables/sales/ReturnOrderLineItemTable.tsx:96
#: src/tables/sales/SalesOrderLineItemTable.tsx:271
msgid "Edit Line Item"
msgstr "編輯行項目"
#: src/tables/general/ExtraLineItemTable.tsx:117
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:331
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:332
#: src/tables/sales/ReturnOrderLineItemTable.tsx:105
#: src/tables/sales/SalesOrderLineItemTable.tsx:280
msgid "Delete Line Item"
@@ -10467,7 +10498,7 @@ msgid "Required Stock"
msgstr ""
#: src/tables/part/PartBuildAllocationsTable.tsx:124
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:383
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:384
msgid "View Build Order"
msgstr ""
@@ -11196,7 +11227,7 @@ msgstr ""
#~ msgstr "Are you sure you want to remove this manufacturer part?"
#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:115
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:399
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:400
msgid "Import Line Items"
msgstr "導入行項目"
@@ -11222,11 +11253,11 @@ msgstr ""
#~ msgid "Add line item"
#~ msgstr "Add line item"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:352
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:353
msgid "Receive line item"
msgstr "接收這行項目"
-#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:416
+#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:417
msgid "Receive items"
msgstr "收到項目"
diff --git a/src/frontend/src/pages/Index/Settings/AccountSettings/MFASettings.tsx b/src/frontend/src/pages/Index/Settings/AccountSettings/MFASettings.tsx
index 52c811cf8a..c59121d306 100644
--- a/src/frontend/src/pages/Index/Settings/AccountSettings/MFASettings.tsx
+++ b/src/frontend/src/pages/Index/Settings/AccountSettings/MFASettings.tsx
@@ -28,12 +28,14 @@ import {
} from '@tabler/icons-react';
import { useQuery } from '@tanstack/react-query';
import { useCallback, useEffect, useMemo, useState } from 'react';
+import { useNavigate } from 'react-router-dom';
import { useShallow } from 'zustand/react/shallow';
import { api, queryClient } from '../../../../App';
import { CopyButton } from '../../../../components/buttons/CopyButton';
import { StylishText } from '../../../../components/items/StylishText';
-import { authApi } from '../../../../functions/auth';
+import { authApi, doLogout } from '../../../../functions/auth';
import { useServerApiState } from '../../../../states/ServerApiState';
+import { useGlobalSettingsState } from '../../../../states/SettingsStates';
import { QrRegistrationForm } from './QrRegistrationForm';
import { parseDate } from './SecurityContent';
@@ -697,6 +699,7 @@ export default function MFASettings() {
const [auth_config] = useServerApiState(
useShallow((state) => [state.auth_config])
);
+ const navigate = useNavigate();
// Fetch list of MFA methods currently configured for the user
const { isLoading, data, refetch } = useQuery({
@@ -708,6 +711,17 @@ export default function MFASettings() {
.catch(() => [])
});
+ const refetchAfterRemoval = () => {
+ refetch();
+ if (
+ data == undefined &&
+ useGlobalSettingsState.getState().isSet('LOGIN_ENFORCE_MFA')
+ ) {
+ console.log('MFA enforced but no MFA methods remain - logging out now');
+ doLogout(navigate);
+ }
+ };
+
// Memoize the list of currently used MFA factors
const usedFactors: string[] = useMemo(() => {
if (isLoading || !data) return [];
@@ -921,14 +935,14 @@ export default function MFASettings() {
opened={removeTOTPModalOpen}
setOpen={setRemoveTOTPModalOpen}
onReauthFlow={reauthenticate}
- onSuccess={refetch}
+ onSuccess={refetchAfterRemoval}
/>
{
+ console.error(`ERR: Error rendering component: ${error}`);
+ },
+ []
+ );
+
return (
@@ -85,7 +94,12 @@ export function SecurityContent() {
{t`Access Tokens`}
-
+ }
+ onError={onError}
+ >
+
+
{user.isSuperuser() && (
diff --git a/src/frontend/src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx b/src/frontend/src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx
index b352df5ee5..e6e2d0cef5 100644
--- a/src/frontend/src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx
+++ b/src/frontend/src/pages/Index/Settings/AdminCenter/ParameterPanel.tsx
@@ -5,7 +5,7 @@ import { StylishText } from '../../../../components/items/StylishText';
import ParameterTemplateTable from '../../../../tables/general/ParameterTemplateTable';
import SelectionListTable from '../../../../tables/part/SelectionListTable';
-export default function PartParameterPanel() {
+export default function ParameterPanel() {
return (
diff --git a/src/frontend/src/pages/part/PartDetail.tsx b/src/frontend/src/pages/part/PartDetail.tsx
index e5f97edfa6..67b942b46c 100644
--- a/src/frontend/src/pages/part/PartDetail.tsx
+++ b/src/frontend/src/pages/part/PartDetail.tsx
@@ -501,13 +501,6 @@ export default function PartDetail() {
model: ModelType.stocklocation,
hidden: part.default_location || !part.category_default_location
},
- {
- type: 'link',
- name: 'default_supplier',
- label: t`Default Supplier`,
- model: ModelType.company,
- hidden: !part.default_supplier
- },
{
type: 'string',
name: 'units',
@@ -704,6 +697,9 @@ export default function PartDetail() {
name: 'default_supplier',
label: t`Default Supplier`,
model: ModelType.supplierpart,
+ model_formatter: (model: any) => {
+ return model.SKU;
+ },
hidden: !part.default_supplier
},
{
@@ -1066,7 +1062,10 @@ export default function PartDetail() {
];
}, [partRequirements, partRequirementsQuery.isFetching, part]);
- const partFields = usePartFields({ create: false });
+ const partFields = usePartFields({
+ create: false,
+ partId: part.pk
+ });
const editPart = useEditApiFormModal({
url: ApiEndpoints.part_list,
diff --git a/src/frontend/src/pages/part/pricing/BomPricingPanel.tsx b/src/frontend/src/pages/part/pricing/BomPricingPanel.tsx
index b67706dc89..e932431965 100644
--- a/src/frontend/src/pages/part/pricing/BomPricingPanel.tsx
+++ b/src/frontend/src/pages/part/pricing/BomPricingPanel.tsx
@@ -54,7 +54,6 @@ function BomPieChart({
thickness={80}
withLabels={false}
withLabelsLine={false}
- tooltipDataSource='segment'
chartLabel={t`Total Price`}
valueFormatter={(value) => tooltipFormatter(value, currency)}
/>
diff --git a/src/frontend/src/pages/stock/LocationDetail.tsx b/src/frontend/src/pages/stock/LocationDetail.tsx
index 7018a83c2f..1cdd66d5b5 100644
--- a/src/frontend/src/pages/stock/LocationDetail.tsx
+++ b/src/frontend/src/pages/stock/LocationDetail.tsx
@@ -6,7 +6,13 @@ import { getDetailUrl } from '@lib/functions/Navigation';
import type { StockOperationProps } from '@lib/types/Forms';
import { t } from '@lingui/core/macro';
import { Group, Skeleton, Stack, Text } from '@mantine/core';
-import { IconInfoCircle, IconPackages, IconSitemap } from '@tabler/icons-react';
+import {
+ IconInfoCircle,
+ IconListDetails,
+ IconPackages,
+ IconSitemap,
+ IconTable
+} from '@tabler/icons-react';
import { useMemo, useState } from 'react';
import { useNavigate, useParams } from 'react-router-dom';
import { api } from '../../App';
@@ -30,6 +36,8 @@ import NavigationTree from '../../components/nav/NavigationTree';
import { PageDetail } from '../../components/nav/PageDetail';
import type { PanelType } from '../../components/panels/Panel';
import { PanelGroup } from '../../components/panels/PanelGroup';
+import ParametersPanel from '../../components/panels/ParametersPanel';
+import SegmentedControlPanel from '../../components/panels/SegmentedControlPanel';
import LocateItemButton from '../../components/plugins/LocateItemButton';
import { stockLocationFields } from '../../forms/StockForms';
import { InvenTreeIcon } from '../../functions/icons';
@@ -42,6 +50,7 @@ import { useStockAdjustActions } from '../../hooks/UseStockAdjustActions';
import { useUserState } from '../../states/UserState';
import { PartListTable } from '../../tables/part/PartTable';
import { StockItemTable } from '../../tables/stock/StockItemTable';
+import StockLocationParametricTable from '../../tables/stock/StockLocationParametricTable';
import { StockLocationTable } from '../../tables/stock/StockLocationTable';
export default function Stock() {
@@ -161,6 +170,8 @@ export default function Stock() {
);
}, [location, instanceQuery]);
+ const [sublocationView, setSublocationView] = useState('table');
+
const locationPanels: PanelType[] = useMemo(() => {
return [
{
@@ -169,12 +180,32 @@ export default function Stock() {
icon: ,
content: detailsPanel
},
- {
+ SegmentedControlPanel({
name: 'sublocations',
label: id ? t`Sublocations` : t`Stock Locations`,
icon: ,
- content:
- },
+ hidden: !user.hasViewPermission(ModelType.stocklocation),
+ selection: sublocationView,
+ onChange: setSublocationView,
+ options: [
+ {
+ value: 'table',
+ label: t`Table View`,
+ icon: ,
+ content:
+ },
+ {
+ value: 'parametric',
+ label: t`Parametric View`,
+ icon: ,
+ content: (
+
+ )
+ }
+ ]
+ }),
{
name: 'stock-items',
label: t`Stock Items`,
@@ -203,9 +234,14 @@ export default function Stock() {
}}
/>
)
- }
+ },
+ ParametersPanel({
+ model_type: ModelType.stocklocation,
+ model_id: location.pk,
+ hidden: !location.pk
+ })
];
- }, [location, id]);
+ }, [sublocationView, location, id]);
const editLocation = useEditApiFormModal({
url: ApiEndpoints.stock_location_list,
diff --git a/src/frontend/src/pages/stock/StockDetail.tsx b/src/frontend/src/pages/stock/StockDetail.tsx
index 3faf693eff..44ad164e38 100644
--- a/src/frontend/src/pages/stock/StockDetail.tsx
+++ b/src/frontend/src/pages/stock/StockDetail.tsx
@@ -753,7 +753,7 @@ export default function StockDetail() {
const stockAdjustActions = useStockAdjustActions({
formProps: stockOperationProps,
delete: false,
- assign: !!stockitem.in_stock,
+ assign: !!stockitem.in_stock && stockitem.part_detail?.salable,
return: !!stockitem.consumed_by || !!stockitem.customer,
merge: false
});
diff --git a/src/frontend/src/states/states.tsx b/src/frontend/src/states/states.tsx
index 82e015e757..8369e66631 100644
--- a/src/frontend/src/states/states.tsx
+++ b/src/frontend/src/states/states.tsx
@@ -1,5 +1,4 @@
import type { PluginProps } from '@lib/types/Plugins';
-import type { NavigateFunction } from 'react-router-dom';
import { setApiDefaults } from '../App';
import { useGlobalStatusState } from './GlobalStatusState';
import { useIconState } from './IconState';
@@ -45,9 +44,7 @@ export interface ServerAPIProps {
* Refetch all global state information.
* Necessary on login, or if locale is changed.
*/
-export async function fetchGlobalStates(
- navigate?: NavigateFunction | undefined
-) {
+export async function fetchGlobalStates() {
const { isLoggedIn } = useUserState.getState();
if (!isLoggedIn()) {
diff --git a/src/frontend/src/tables/InvenTreeTable.tsx b/src/frontend/src/tables/InvenTreeTable.tsx
index d262348d82..64d6c93876 100644
--- a/src/frontend/src/tables/InvenTreeTable.tsx
+++ b/src/frontend/src/tables/InvenTreeTable.tsx
@@ -29,6 +29,7 @@ import { Boundary } from '../components/Boundary';
import { useApi } from '../contexts/ApiContext';
import { extractAvailableFields, mapFields } from '../functions/forms';
import { showApiErrorMessage } from '../functions/notifications';
+import { hashString } from '../functions/tables';
import { useLocalState } from '../states/LocalState';
import { useUserSettingsState } from '../states/SettingsStates';
import { useStoredTableState } from '../states/StoredTableState';
@@ -101,7 +102,7 @@ export function InvenTreeTable>({
// Key used for caching table data
const cacheKey = useMemo(() => {
- const key: string = `table-${tableState.tableKey}`;
+ const key: string = `tbl-${tableState.tableKey}`;
// Remove anything after (and including) "mantine"
const mantineIndex = key.indexOf('-mantine');
@@ -244,6 +245,12 @@ export function InvenTreeTable>({
[tableState.setSelectedRecords]
);
+ // A hash of the current column configuration
+ // This is a workaround to fix an issue with mantine-datatable where
+ // the columns do not update correctly when they are changed dynamically
+ // Ref: https://github.com/icflorescu/mantine-datatable/issues/759
+ const [columnHash, setColumnHash] = useState('');
+
// Update column visibility when hiddenColumns change
const dataColumns: any = useMemo(() => {
let cols: TableColumn[] = columns.filter((col) => col?.hidden != true);
@@ -296,6 +303,9 @@ export function InvenTreeTable>({
});
}
+ const columnNames: string = cols.map((col) => col.accessor).join(',');
+ setColumnHash(hashString(columnNames));
+
return cols;
}, [
columns,
@@ -328,28 +338,11 @@ export function InvenTreeTable>({
// Final state of the table columns
const tableColumns = useDataTableColumns({
- key: cacheKey,
+ key: `${cacheKey}-${columnHash}`,
columns: dataColumns,
getInitialValueInEffect: false
});
- // Cache the "ordering" of the columns
- const dataColumnsOrder: string[] = useMemo(() => {
- return dataColumns.map((col: any) => col.accessor);
- }, [dataColumns]);
-
- // Ensure that the "actions" column is always at the end of the list
- // This effect is necessary as sometimes the underlying mantine-datatable columns change
- useEffect(() => {
- // Update the columns order only if it has changed
- if (
- JSON.stringify(tableColumns.columnsOrder) !=
- JSON.stringify(dataColumnsOrder)
- ) {
- tableColumns.setColumnsOrder(dataColumnsOrder);
- }
- }, [cacheKey, dataColumnsOrder]);
-
// Reset the pagination state when the search term changes
useEffect(() => {
tableState.setPage(1);
diff --git a/src/frontend/src/tables/bom/BomTable.tsx b/src/frontend/src/tables/bom/BomTable.tsx
index cc50be9764..9cb18a2720 100644
--- a/src/frontend/src/tables/bom/BomTable.tsx
+++ b/src/frontend/src/tables/bom/BomTable.tsx
@@ -670,9 +670,10 @@ export function BomTable({
params: {
...params,
part: partId,
- category_detail: true,
+ substitutes: true,
part_detail: true,
- sub_part_detail: true
+ sub_part_detail: true,
+ category_detail: true
},
tableActions: tableActions,
tableFilters: tableFilters,
diff --git a/src/frontend/src/tables/build/BuildAllocatedStockTable.tsx b/src/frontend/src/tables/build/BuildAllocatedStockTable.tsx
index 0a67448029..bacf33764e 100644
--- a/src/frontend/src/tables/build/BuildAllocatedStockTable.tsx
+++ b/src/frontend/src/tables/build/BuildAllocatedStockTable.tsx
@@ -6,7 +6,7 @@ import { ApiEndpoints } from '@lib/enums/ApiEndpoints';
import { ModelType } from '@lib/enums/ModelType';
import { UserRoles } from '@lib/enums/Roles';
import { apiUrl } from '@lib/functions/Api';
-import { ActionButton } from '@lib/index';
+import { ActionButton, formatDecimal } from '@lib/index';
import type { TableFilter } from '@lib/types/Filters';
import type { StockOperationProps } from '@lib/types/Forms';
import type { TableColumn } from '@lib/types/Tables';
@@ -113,13 +113,6 @@ export default function BuildAllocatedStockTable({
sortable: true,
switchable: true
},
- {
- accessor: 'serial',
- title: t`Serial Number`,
- sortable: false,
- switchable: true,
- render: (record: any) => record?.stock_item_detail?.serial
- },
{
accessor: 'batch',
title: t`Batch Code`,
@@ -128,15 +121,22 @@ export default function BuildAllocatedStockTable({
render: (record: any) => record?.stock_item_detail?.batch
},
DecimalColumn({
- accessor: 'available',
+ accessor: 'stock_item_detail.quantity',
title: t`Available`
}),
- DecimalColumn({
+ {
accessor: 'quantity',
title: t`Allocated`,
- sortable: true,
- switchable: false
- }),
+ render: (record: any) => {
+ const serial = record?.stock_item_detail?.serial;
+
+ if (serial && record?.quantity == 1) {
+ return `${t`Serial`}: ${serial}`;
+ }
+
+ return formatDecimal(record.quantity);
+ }
+ },
LocationColumn({
accessor: 'location_detail',
switchable: true,
diff --git a/src/frontend/src/tables/build/BuildOrderParametricTable.tsx b/src/frontend/src/tables/build/BuildOrderParametricTable.tsx
index d9f85cb295..67606bf2cb 100644
--- a/src/frontend/src/tables/build/BuildOrderParametricTable.tsx
+++ b/src/frontend/src/tables/build/BuildOrderParametricTable.tsx
@@ -1,8 +1,13 @@
import { ApiEndpoints, ModelType } from '@lib/index';
import type { TableFilter } from '@lib/types/Filters';
import type { TableColumn } from '@lib/types/Tables';
+import { t } from '@lingui/core/macro';
import { type ReactNode, useMemo } from 'react';
-import { DescriptionColumn, ReferenceColumn } from '../ColumnRenderers';
+import {
+ DescriptionColumn,
+ PartColumn,
+ ReferenceColumn
+} from '../ColumnRenderers';
import { OrderStatusFilter, OutstandingFilter } from '../Filter';
import ParametricDataTable from '../general/ParametricDataTable';
@@ -16,6 +21,10 @@ export default function BuildOrderParametricTable({
ReferenceColumn({
switchable: false
}),
+ PartColumn({
+ part: 'part_detail',
+ title: t`Part`
+ }),
DescriptionColumn({
accessor: 'title'
})
@@ -33,6 +42,7 @@ export default function BuildOrderParametricTable({
customColumns={customColumns}
customFilters={customFilters}
queryParams={{
+ part_detail: true,
...queryParams
}}
/>
diff --git a/src/frontend/src/tables/build/BuildOutputTable.tsx b/src/frontend/src/tables/build/BuildOutputTable.tsx
index 35f86c6993..7d3921d247 100644
--- a/src/frontend/src/tables/build/BuildOutputTable.tsx
+++ b/src/frontend/src/tables/build/BuildOutputTable.tsx
@@ -18,7 +18,6 @@ import {
} from '@tabler/icons-react';
import { useQuery } from '@tanstack/react-query';
import { useCallback, useEffect, useMemo, useState } from 'react';
-import { useNavigate } from 'react-router-dom';
import { ActionButton } from '@lib/components/ActionButton';
import { AddItemButton } from '@lib/components/AddItemButton';
@@ -151,7 +150,6 @@ export default function BuildOutputTable({
}: Readonly<{ build: any; refreshBuild: () => void }>) {
const api = useApi();
const user = useUserState();
- const navigate = useNavigate();
const table = useTable('build-outputs');
const buildId: number = useMemo(() => {
diff --git a/src/frontend/src/tables/purchasing/PurchaseOrderLineItemTable.tsx b/src/frontend/src/tables/purchasing/PurchaseOrderLineItemTable.tsx
index 293ab271df..3decd7c824 100644
--- a/src/frontend/src/tables/purchasing/PurchaseOrderLineItemTable.tsx
+++ b/src/frontend/src/tables/purchasing/PurchaseOrderLineItemTable.tsx
@@ -301,6 +301,7 @@ export function PurchaseOrderLineItemTable({
fields: addPurchaseOrderFields,
initialData: {
...initialData,
+ purchase_price: null,
purchase_price_currency: currency
},
onFormSuccess: orderDetailRefresh,
diff --git a/src/frontend/src/tables/purchasing/SupplierPriceBreakTable.tsx b/src/frontend/src/tables/purchasing/SupplierPriceBreakTable.tsx
index 2240423340..489a19bf0c 100644
--- a/src/frontend/src/tables/purchasing/SupplierPriceBreakTable.tsx
+++ b/src/frontend/src/tables/purchasing/SupplierPriceBreakTable.tsx
@@ -206,7 +206,8 @@ export default function SupplierPriceBreakTable({
supplier_detail: true
},
tableActions: tableActions,
- rowActions: rowActions
+ rowActions: rowActions,
+ enableDownload: true
}}
/>
>
diff --git a/src/frontend/src/tables/stock/StockLocationParametricTable.tsx b/src/frontend/src/tables/stock/StockLocationParametricTable.tsx
new file mode 100644
index 0000000000..1c34581921
--- /dev/null
+++ b/src/frontend/src/tables/stock/StockLocationParametricTable.tsx
@@ -0,0 +1,45 @@
+import { ApiEndpoints } from '@lib/enums/ApiEndpoints';
+import { ModelType } from '@lib/enums/ModelType';
+import type { TableColumn } from '@lib/types/Tables';
+import { Group } from '@mantine/core';
+import { type ReactNode, useMemo } from 'react';
+import { ApiIcon } from '../../components/items/ApiIcon';
+import { DescriptionColumn } from '../ColumnRenderers';
+import ParametricDataTable from '../general/ParametricDataTable';
+
+export default function StockLocationParametricTable({
+ queryParams
+}: {
+ queryParams?: Record;
+}): ReactNode {
+ const customColumns: TableColumn[] = useMemo(() => {
+ return [
+ {
+ accessor: 'name',
+ switchable: false,
+ render: (record: any) => (
+
+ {record.icon && }
+ {record.name}
+
+ )
+ },
+ DescriptionColumn({}),
+ {
+ accessor: 'pathstring',
+ sortable: true
+ }
+ ];
+ }, []);
+
+ return (
+
+ );
+}
diff --git a/src/frontend/tests/pages/pui_part.spec.ts b/src/frontend/tests/pages/pui_part.spec.ts
index 863ed4d669..4fd6dce101 100644
--- a/src/frontend/tests/pages/pui_part.spec.ts
+++ b/src/frontend/tests/pages/pui_part.spec.ts
@@ -135,7 +135,7 @@ test('Parts - BOM', async ({ browser }) => {
await page.getByRole('button', { name: 'Close' }).click();
});
-test('Part - Editing', async ({ browser }) => {
+test('Parts - Editing', async ({ browser }) => {
const page = await doCachedLogin(browser, { url: 'part/104/details' });
await page.getByText('A square table - with blue paint').first().waitFor();
diff --git a/src/frontend/tests/pui_tables.spec.ts b/src/frontend/tests/pui_tables.spec.ts
index 00c10a0dc8..d6296e8688 100644
--- a/src/frontend/tests/pui_tables.spec.ts
+++ b/src/frontend/tests/pui_tables.spec.ts
@@ -84,7 +84,8 @@ test('Tables - Columns', async ({ browser }) => {
// De-select some items
await page.getByRole('menuitem', { name: 'Description' }).click();
- await page.getByRole('menuitem', { name: 'Stocktake' }).click();
+ await page.getByRole('menuitem', { name: 'Batch Code' }).click();
+
await page.keyboard.press('Escape');
await navigate(page, '/sales/index/salesorders');
diff --git a/src/frontend/yarn.lock b/src/frontend/yarn.lock
index 0fe4624b8c..6bee0ccbef 100644
--- a/src/frontend/yarn.lock
+++ b/src/frontend/yarn.lock
@@ -348,12 +348,12 @@
"@babel/plugin-transform-modules-commonjs" "^7.27.1"
"@babel/plugin-transform-typescript" "^7.27.1"
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.0", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.27.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7":
+"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.0", "@babel/runtime@^7.18.3", "@babel/runtime@^7.18.6", "@babel/runtime@^7.27.0":
version "7.28.3"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.3.tgz#75c5034b55ba868121668be5d5bb31cc64e6e61a"
integrity sha512-9uIQ10o0WGdpP6GDhXcdOJPJuDgFtIDtN/9+ArJQ2NAfAmiuhTQdzkaTGR33v43GYS2UrSA0eX2pPPHoFVvpxA==
-"@babel/runtime@^7.12.5", "@babel/runtime@^7.20.13", "@babel/runtime@^7.21.0":
+"@babel/runtime@^7.12.5", "@babel/runtime@^7.20.13", "@babel/runtime@^7.21.0", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7":
version "7.28.4"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.4.tgz#a70226016fabe25c5783b2f22d3e1c9bc5ca3326"
integrity sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==
@@ -929,14 +929,14 @@
resolved "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz"
integrity sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==
-"@floating-ui/core@^1.6.0":
- version "1.6.7"
- resolved "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.7.tgz"
- integrity sha512-yDzVT/Lm101nQ5TCVeK65LtdN7Tj4Qpr9RTXJ2vPFLqtLxwOrpoxAHAJI8J3yYWUc40J0BDBheaitK5SJmno2g==
+"@floating-ui/core@^1.6.0", "@floating-ui/core@^1.7.3":
+ version "1.7.3"
+ resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.7.3.tgz#462d722f001e23e46d86fd2bd0d21b7693ccb8b7"
+ integrity sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==
dependencies:
- "@floating-ui/utils" "^0.2.7"
+ "@floating-ui/utils" "^0.2.10"
-"@floating-ui/dom@^1.0.0", "@floating-ui/dom@^1.0.1":
+"@floating-ui/dom@^1.0.1":
version "1.6.10"
resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.10.tgz"
integrity sha512-fskgCFv8J8OamCmyun8MfjB1Olfn+uZKjOKZ0vhYF3gRmEUXcGOjxWL8bBr7i4kIuPZ2KD2S3EUIOxnjC8kl2A==
@@ -944,26 +944,34 @@
"@floating-ui/core" "^1.6.0"
"@floating-ui/utils" "^0.2.7"
-"@floating-ui/react-dom@^2.1.2":
- version "2.1.2"
- resolved "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz"
- integrity sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==
+"@floating-ui/dom@^1.7.4":
+ version "1.7.4"
+ resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.7.4.tgz#ee667549998745c9c3e3e84683b909c31d6c9a77"
+ integrity sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==
dependencies:
- "@floating-ui/dom" "^1.0.0"
+ "@floating-ui/core" "^1.7.3"
+ "@floating-ui/utils" "^0.2.10"
-"@floating-ui/react@^0.26.28":
- version "0.26.28"
- resolved "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.28.tgz"
- integrity sha512-yORQuuAtVpiRjpMhdc0wJj06b9JFjrYF4qp96j++v2NBpbi6SEGF7donUJ3TMieerQ6qVkAv1tgr7L4r5roTqw==
+"@floating-ui/react-dom@^2.1.6":
+ version "2.1.6"
+ resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.6.tgz#189f681043c1400561f62972f461b93f01bf2231"
+ integrity sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==
dependencies:
- "@floating-ui/react-dom" "^2.1.2"
- "@floating-ui/utils" "^0.2.8"
+ "@floating-ui/dom" "^1.7.4"
+
+"@floating-ui/react@^0.27.16":
+ version "0.27.16"
+ resolved "https://registry.yarnpkg.com/@floating-ui/react/-/react-0.27.16.tgz#6e485b5270b7a3296fdc4d0faf2ac9abf955a2f7"
+ integrity sha512-9O8N4SeG2z++TSM8QA/KTeKFBVCNEz/AGS7gWPJf6KFRzmRWixFRnCnkPHRDwSVZW6QPDO6uT0P2SpWNKCc9/g==
+ dependencies:
+ "@floating-ui/react-dom" "^2.1.6"
+ "@floating-ui/utils" "^0.2.10"
tabbable "^6.0.0"
-"@floating-ui/utils@^0.2.7", "@floating-ui/utils@^0.2.8":
- version "0.2.9"
- resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz"
- integrity sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==
+"@floating-ui/utils@^0.2.10", "@floating-ui/utils@^0.2.7":
+ version "0.2.10"
+ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.10.tgz#a2a1e3812d14525f725d011a73eceb41fef5bc1c"
+ integrity sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==
"@fortawesome/fontawesome-common-types@7.0.1":
version "7.0.1"
@@ -1282,83 +1290,83 @@
"@lingui/core" "5.4.1"
"@mantine/carousel@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/carousel/-/carousel-8.2.8.tgz#f5e0654770eca331dd180be40810e27a690b9680"
- integrity sha512-FypLthS9y6Ta0ifQYt7oFdnxbOcJBvr2s0ilfmCSPIiEnY0WuRmXJYuVnWtJ1sW1HfayBMxjTO6iLR6UIUysjw==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/carousel/-/carousel-8.3.10.tgz#de5ac90a32ee487510dcb5bc8eba3582c3435b9f"
+ integrity sha512-EyUgsIORa3ZozJNDr3Z4k2Wate5+2Ylmi7G+aF48nwrkl2JxPfqM98SVSlvshY3swQqHRSC+pxQUXz+7mlhybw==
"@mantine/charts@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/charts/-/charts-8.2.8.tgz#3f5a058b74128f9fbe818110a4a615b8cdf07d36"
- integrity sha512-946gThrgoFOPl5sNOjQ7ILriGIsP/B24PQGt9GY0fL9Fg0B7Nmuhzn7lxZscBW5//NHgZTE7ul5zdU+Z00ST2Q==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/charts/-/charts-8.3.10.tgz#74e9b263c046e99df078c74c5e8ce21b346b6d47"
+ integrity sha512-/JbuxY7qzrxrZR7ZjKj9dD8OXq03nAIClqJ+fD5ezF8J1cVYH9nx0IaIu8RPpaT4UwRdxz+TH/EutQ0LdeOz8w==
"@mantine/core@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/core/-/core-8.2.8.tgz#2ef5fd003dec12f96d462ec91d87e5b5f25ff7b1"
- integrity sha512-dybAXrlQ+QiIhpnVCkdH6P4Sjm9I9RymYXfDp97oj9KfGRMEJGLDdPAwp/2GhXe7UdDkzqD48JCkbfRWF2Q+qA==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/core/-/core-8.3.10.tgz#f9c2f9ae6dd68836a90f0899f4aed10ac4e31703"
+ integrity sha512-aKQFETN14v6GtM07b/G5yJneMM1yrgf9mNrTah6GVy5DvQM0AeutITT7toHqh5gxxwzdg/DoY+HQsv5zhqnc5g==
dependencies:
- "@floating-ui/react" "^0.26.28"
+ "@floating-ui/react" "^0.27.16"
clsx "^2.1.1"
- react-number-format "^5.4.3"
- react-remove-scroll "^2.6.2"
+ react-number-format "^5.4.4"
+ react-remove-scroll "^2.7.1"
react-textarea-autosize "8.5.9"
- type-fest "^4.27.0"
+ type-fest "^4.41.0"
"@mantine/dates@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/dates/-/dates-8.2.8.tgz#cd1c689a9d99c04c9b323171c12b23289f4dd1ac"
- integrity sha512-E6YsTj+2avwZL4gOc15aIIbb9D+ux7gdXQI67aobrwqqeEoW8O72h0bIE97DwAaUSbUsFdFPDhMh8xCFFR6yxw==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/dates/-/dates-8.3.10.tgz#c79490a5a8cec4cb0c35bc9568da9bcb705e11e7"
+ integrity sha512-P1uZ+alYGp7fsmkfd+7Fur4AGrqT0X6BWLiVTomzrbyykA+m4TSwPyQjKfsDc7XRqaqx992br/U65T82zy+qGQ==
dependencies:
clsx "^2.1.1"
"@mantine/dropzone@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/dropzone/-/dropzone-8.2.8.tgz#2d460d6d0376efbe162b568ca62ed42e73342cc3"
- integrity sha512-aMohj+VkkBAtMLPkrfJ/zxyQo3B48Asp6undW6bIX0gV8h3APO0qNhiccXbSioMc+Mv3hpmj1lIH5LPOIqnzeg==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/dropzone/-/dropzone-8.3.10.tgz#6ad80f70b223d193556a0503506f815c9a5d3ca2"
+ integrity sha512-PqY9gZ7tpz34iKek+UImbK1LBmSmkMlspqkUecAsMwbBqD2WNLNINTl7pkOh20BdYOaX1GvfkXwTA4/6ya/1kg==
dependencies:
react-dropzone "14.3.8"
"@mantine/form@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/form/-/form-8.2.8.tgz#14fc864be4fd9169088950148fec53b497a021e6"
- integrity sha512-edigaUCmyxoPcqhMgkgJHXRgbzR1tym88xQNNgfGA1KYc9gr0BTk/3dOa5B93HIVdO9/DEXZwYKN4cjrKPDY+g==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/form/-/form-8.3.10.tgz#2b56e53457bd71c39338d18c42c6aae68ce48dd6"
+ integrity sha512-TuBmCUIH0qHUig+y9My3bLL9CRoW4g9bijIF6743gqVh0o/daSwplc2TTVMj6sl+F1MR+SJiHtAC8FoR7fdhNw==
dependencies:
fast-deep-equal "^3.1.3"
klona "^2.0.6"
"@mantine/hooks@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-8.2.8.tgz#324ba966ccea6e33e8dfca5926df465e1fc5d998"
- integrity sha512-KK1krCcXizWT6JF8gWexv58imQBbviylAJqSqdZ4zUPgrpe81ehMyfxo5Z9EZsnSwMxkB4RLMhCCJhC5g8GvLA==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-8.3.10.tgz#610e306e7d5609d4994b9ffba57a9a1bfc96d03a"
+ integrity sha512-bv+yYHl+keTIvakiDzVJMIjW+o8/Px0G3EdpCMFG+U2ux6SwQqluqoq+/kqrTtT6RaLvQ0fMxjpIULF2cu/xAg==
"@mantine/modals@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/modals/-/modals-8.2.8.tgz#29a2900306112f8b1bf93e8e91390e5e3c1f28f0"
- integrity sha512-+RzHK4uy/Gsk6RspunD8An9WYF921If8S2pDeveMwxVhUeNMZXeh9FpQWESlqVV+SHSPDDP4QeTkwhJm9DWf2g==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/modals/-/modals-8.3.10.tgz#a60d5c6a61c531b0267f811358f90e841201d61b"
+ integrity sha512-XopCrP8dindhzSDazU47BgU8TVsiOyEG0u1UMJJ4u8TdvBctP7QVeJmGKj+B4MRHk2cHrjIF38dEGJhDgTITEg==
"@mantine/notifications@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-8.2.8.tgz#080955945061101eec2d9123536fd5956dc4c001"
- integrity sha512-luNksAUkROoMzKCB/30nQ8o38wt54ktylbpBcTrAcjE1q00nH/IEYLS58iUYGf8l/xGBV1KH8jgSik58iqk++A==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-8.3.10.tgz#a2aeb401d90cca499ee10198d607fbfb3373cefd"
+ integrity sha512-0aVpRCyn9u0wuryBnFu1jOwBYw6xGeaNNtTcTUnSvkL6NAypfPon6JG7Wsekf3IuWSTLBjhYaFEIEd4nh7VDpg==
dependencies:
- "@mantine/store" "8.2.8"
+ "@mantine/store" "8.3.10"
react-transition-group "4.4.5"
"@mantine/spotlight@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/spotlight/-/spotlight-8.2.8.tgz#d854937c627821c91c9c7553b3481f9c47dcc406"
- integrity sha512-wZ4TMKC6LldI31DFOB89iat+4eyM29URN1uwklWUeigqR9/vywqXcKdzaSjpmbDxYelHFEp4AjgHzeG/8C915A==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/spotlight/-/spotlight-8.3.10.tgz#01f2eac0396b7037955079a887d7ccb2438b9e8c"
+ integrity sha512-0GfQd/smRcd5u0o6Ad7J9ZEWLcZZ81h9/Z9qUnzIlJeYjXqJdr40MMqDxNsXgZEDKscPJkggZMqMiRZXhFbdNQ==
dependencies:
- "@mantine/store" "8.2.8"
+ "@mantine/store" "8.3.10"
-"@mantine/store@8.2.8":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/store/-/store-8.2.8.tgz#ffa43a39110da7ad0957311f109975af793c0b34"
- integrity sha512-xma5vcJlcR2UN6NZj0Rhskfppmz6wUTY/52EBU9sKZw60e1iiuTX2Bk/sfUa34VKZF4cRS46VLz2qstyCJne4Q==
+"@mantine/store@8.3.10":
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/store/-/store-8.3.10.tgz#86d5cc35c2f16c3855840ff153a24a2787706f45"
+ integrity sha512-38t1UivcucZo9hQq27F/eqR5GvovNs4NHEz6DchOuZzV5IJWqO8+T07ivb8wct47ovYe42rPfLcaOdnIEvMsJA==
"@mantine/vanilla-extract@^8.2.7":
- version "8.2.8"
- resolved "https://registry.yarnpkg.com/@mantine/vanilla-extract/-/vanilla-extract-8.2.8.tgz#8367c9769ea6bf5199b895d069861ec4ec4050b3"
- integrity sha512-C1EQzwC+Hh/lCcntqPAxtRk8fYBaq+ECOcJE8q33kqUTN6my0uyBYj76sc3KBoKjCvEX8WzRnBAMPjOBj9U9oA==
+ version "8.3.10"
+ resolved "https://registry.yarnpkg.com/@mantine/vanilla-extract/-/vanilla-extract-8.3.10.tgz#40415fc64a13841d99ef890471eba491d2b2e2f9"
+ integrity sha512-EhMtgR1BUrX4sVAc+ajXOvQSoEaXq/CTcpT5qgB/4kciHy1kTPks6ASEfivNpAPMzRhAgzO4y0bnMMqCkFQC7A==
"@marijn/find-cluster-break@^1.0.0":
version "1.0.2"
@@ -2855,12 +2863,12 @@ cssesc@^3.0.0:
resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
-csstype@3.1.3, csstype@^3.0.2:
+csstype@3.1.3:
version "3.1.3"
resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz"
integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
-csstype@^3.0.7, csstype@^3.2.3:
+csstype@^3.0.2, csstype@^3.0.7, csstype@^3.2.3:
version "3.2.3"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.2.3.tgz#ec48c0f3e993e50648c86da559e2610995cf989a"
integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==
@@ -3016,7 +3024,7 @@ deprecation@^2.0.0:
detect-node-es@^1.1.0:
version "1.1.0"
- resolved "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz"
+ resolved "https://registry.yarnpkg.com/detect-node-es/-/detect-node-es-1.1.0.tgz#163acdf643330caa0b4cd7c21e7ee7755d6fa493"
integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==
dijkstrajs@^1.0.1:
@@ -3026,7 +3034,7 @@ dijkstrajs@^1.0.1:
dom-helpers@^5.0.1:
version "5.2.1"
- resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz"
+ resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902"
integrity sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==
dependencies:
"@babel/runtime" "^7.8.7"
@@ -3444,7 +3452,7 @@ get-intrinsic@^1.2.6:
get-nonce@^1.0.0:
version "1.0.1"
- resolved "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz"
+ resolved "https://registry.yarnpkg.com/get-nonce/-/get-nonce-1.0.1.tgz#fdf3f0278073820d2ce9426c18f07481b1e0cdf3"
integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==
get-package-type@^0.1.0:
@@ -3843,7 +3851,7 @@ jsonfile@^6.0.1:
klona@^2.0.6:
version "2.0.6"
- resolved "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz"
+ resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22"
integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==
kolorist@^1.8.0:
@@ -3909,7 +3917,7 @@ log-symbols@^4.1.0:
loose-envify@^1.4.0:
version "1.4.0"
- resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz"
+ resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
@@ -3967,14 +3975,14 @@ make-dir@^4.0.0:
semver "^7.5.3"
mantine-contextmenu@^8.2.0:
- version "8.2.0"
- resolved "https://registry.yarnpkg.com/mantine-contextmenu/-/mantine-contextmenu-8.2.0.tgz#6f96f881462c89e3dcc6d68035be71dc3371aee1"
- integrity sha512-GKxC13wTnwCmToh6UvQtXN/vVbdbnScwXYtgzyKOzVGGEPBDmkqhKjG/IYq+JqSIqf/t9WoVHPm/81Jqi5FJgg==
+ version "8.3.11"
+ resolved "https://registry.yarnpkg.com/mantine-contextmenu/-/mantine-contextmenu-8.3.11.tgz#15075e156b7ea401ff07cf5007bb4e6c0fafd094"
+ integrity sha512-EyTztsfgoBeCDUTSifZHpWav8kFZCSBLc2Of44tMfSPIf+FSPVlpQ4OPD9+NUEcYdz2bH4hQwbWiwh4OQd87Nw==
mantine-datatable@^8.2.0:
- version "8.2.0"
- resolved "https://registry.yarnpkg.com/mantine-datatable/-/mantine-datatable-8.2.0.tgz#05ee4f8ed59a0138bff2b9aee8ecc36fbb34f448"
- integrity sha512-dkdOnDw1DF9t5kxl4VEPM0baubNW2Tc+lvbc0bkVU1bNaDpXphSeoTGU6lai0sQ21hrKSMbfiK0ACczdrSOKyg==
+ version "8.3.11"
+ resolved "https://registry.yarnpkg.com/mantine-datatable/-/mantine-datatable-8.3.11.tgz#97b40c17d5362d7df9ec0c2f218f1af66c725cda"
+ integrity sha512-n4R0lBr/CsSWeK4w+ljv52IQ1E0sDW3SfMn/qAdTvDWIgUh2fIsuHCjqkElvW2KQUNXR4rDRJ+RZrSJL1pOJjA==
marked@^4.1.0:
version "4.3.0"
@@ -4158,7 +4166,7 @@ nyc@^17.1.0:
object-assign@^4.1.1:
version "4.1.1"
- resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"
+ resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
observable-fns@^0.6.1:
@@ -4539,10 +4547,10 @@ react-is@^19.1.2:
resolved "https://registry.yarnpkg.com/react-is/-/react-is-19.2.1.tgz#712fa6ee30c8398dc34260017325dad92b9224c5"
integrity sha512-L7BnWgRbMwzMAubQcS7sXdPdNLmKlucPlopgAzx7FtYbksWZgEWiuYM5x9T6UqS2Ne0rsgQTq5kY2SGqpzUkYA==
-react-number-format@^5.4.3:
- version "5.4.3"
- resolved "https://registry.npmjs.org/react-number-format/-/react-number-format-5.4.3.tgz"
- integrity sha512-VCY5hFg/soBighAoGcdE+GagkJq0230qN6jcS5sp8wQX1qy1fYN/RX7/BXkrs0oyzzwqR8/+eSUrqXbGeywdUQ==
+react-number-format@^5.4.4:
+ version "5.4.4"
+ resolved "https://registry.yarnpkg.com/react-number-format/-/react-number-format-5.4.4.tgz#d31f0e260609431500c8d3f81bbd3ae1fb7cacad"
+ integrity sha512-wOmoNZoOpvMminhifQYiYSTCLUDOiUbBunrMrMjA+dV52sY+vck1S4UhR6PkgnoCquvvMSeJjErXZ4qSaWCliA==
"react-redux@8.x.x || 9.x.x":
version "9.2.0"
@@ -4559,22 +4567,22 @@ react-refresh@^0.17.0:
react-remove-scroll-bar@^2.3.7:
version "2.3.8"
- resolved "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz"
+ resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz#99c20f908ee467b385b68a3469b4a3e750012223"
integrity sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==
dependencies:
react-style-singleton "^2.2.2"
tslib "^2.0.0"
-react-remove-scroll@^2.6.2:
- version "2.6.2"
- resolved "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.6.2.tgz"
- integrity sha512-KmONPx5fnlXYJQqC62Q+lwIeAk64ws/cUw6omIumRzMRPqgnYqhSSti99nbj0Ry13bv7dF+BKn7NB+OqkdZGTw==
+react-remove-scroll@^2.7.1:
+ version "2.7.2"
+ resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz#6442da56791117661978ae99cd29be9026fecca0"
+ integrity sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==
dependencies:
react-remove-scroll-bar "^2.3.7"
- react-style-singleton "^2.2.1"
+ react-style-singleton "^2.2.3"
tslib "^2.1.0"
use-callback-ref "^1.3.3"
- use-sidecar "^1.1.2"
+ use-sidecar "^1.1.3"
react-resizable@^3.0.5:
version "3.0.5"
@@ -4621,9 +4629,9 @@ react-simplemde-editor@^5.2.0:
dependencies:
"@types/codemirror" "~5.60.5"
-react-style-singleton@^2.2.1, react-style-singleton@^2.2.2:
+react-style-singleton@^2.2.2, react-style-singleton@^2.2.3:
version "2.2.3"
- resolved "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz"
+ resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.2.3.tgz#4265608be69a4d70cfe3047f2c6c88b2c3ace388"
integrity sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==
dependencies:
get-nonce "^1.0.0"
@@ -5132,9 +5140,9 @@ supports-preserve-symlinks-flag@^1.0.0:
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
tabbable@^6.0.0:
- version "6.2.0"
- resolved "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz"
- integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.3.0.tgz#2e0e6163935387cdeacd44e9334616ca0115a8d3"
+ integrity sha512-EIHvdY5bPLuWForiR/AN2Bxngzpuwn1is4asboytXtpTgsArc+WmSJKVLlhdh71u7jFcryDqB2A8lQvj78MkyQ==
test-exclude@^6.0.0:
version "6.0.0"
@@ -5211,10 +5219,10 @@ type-fest@^0.8.0:
resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz"
integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
-type-fest@^4.27.0:
- version "4.32.0"
- resolved "https://registry.npmjs.org/type-fest/-/type-fest-4.32.0.tgz"
- integrity sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==
+type-fest@^4.41.0:
+ version "4.41.0"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-4.41.0.tgz#6ae1c8e5731273c2bf1f58ad39cbae2c91a46c58"
+ integrity sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==
typedarray-to-buffer@^3.1.5:
version "3.1.5"
@@ -5295,32 +5303,37 @@ uri-js@^4.2.2, uri-js@^4.4.1:
use-callback-ref@^1.3.3:
version "1.3.3"
- resolved "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz"
+ resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.3.tgz#98d9fab067075841c5b2c6852090d5d0feabe2bf"
integrity sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==
dependencies:
tslib "^2.0.0"
use-composed-ref@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz"
- integrity sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.4.0.tgz#09e023bf798d005286ad85cd20674bdf5770653b"
+ integrity sha512-djviaxuOOh7wkj0paeO1Q/4wMZ8Zrnag5H6yBvzN7AKKe8beOaED9SF5/ByLqsku8NP4zQqsvM2u3ew/tJK8/w==
-use-isomorphic-layout-effect@^1.1.1, use-isomorphic-layout-effect@^1.2.0:
+use-isomorphic-layout-effect@^1.1.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.1.tgz#2f11a525628f56424521c748feabc2ffcc962fce"
+ integrity sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA==
+
+use-isomorphic-layout-effect@^1.2.0:
version "1.2.0"
resolved "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.0.tgz"
integrity sha512-q6ayo8DWoPZT0VdG4u3D3uxcgONP3Mevx2i2b0434cwWBoL+aelL1DzkXI6w3PhTZzUeR2kaVlZn70iCiseP6w==
use-latest@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz"
- integrity sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/use-latest/-/use-latest-1.3.0.tgz#549b9b0d4c1761862072f0899c6f096eb379137a"
+ integrity sha512-mhg3xdm9NaM8q+gLT8KryJPnRFOz1/5XPBhmDEVZK1webPzDjrPk7f/mbpeLqTgB9msytYWANxgALOCJKnLvcQ==
dependencies:
use-isomorphic-layout-effect "^1.1.1"
-use-sidecar@^1.1.2:
- version "1.1.2"
- resolved "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz"
- integrity sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==
+use-sidecar@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/use-sidecar/-/use-sidecar-1.1.3.tgz#10e7fd897d130b896e2c546c63a5e8233d00efdb"
+ integrity sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==
dependencies:
detect-node-es "^1.1.0"
tslib "^2.0.0"
diff --git a/src/performance/tests.py b/src/performance/tests.py
new file mode 100644
index 0000000000..cd15152433
--- /dev/null
+++ b/src/performance/tests.py
@@ -0,0 +1,160 @@
+"""Performance benchmarking tests for InvenTree using the module."""
+
+import json
+import os
+
+import pytest
+from inventree.api import InvenTreeAPI
+
+server = os.environ.get('INVENTREE_PYTHON_TEST_SERVER', 'http://127.0.0.1:12345')
+user = os.environ.get('INVENTREE_PYTHON_TEST_USERNAME', 'testuser')
+pwd = os.environ.get('INVENTREE_PYTHON_TEST_PASSWORD', 'testpassword')
+api_client = InvenTreeAPI(
+ server,
+ username=user,
+ password=pwd,
+ timeout=30,
+ token_name='python-test',
+ use_token_auth=True,
+)
+
+
+@pytest.mark.benchmark
+def test_api_auth_performance():
+ """Benchmark the API authentication performance."""
+ client = InvenTreeAPI(
+ server,
+ username=user,
+ password=pwd,
+ timeout=30,
+ token_name='python-test',
+ use_token_auth=True,
+ )
+ assert client
+
+
+@pytest.mark.benchmark
+@pytest.mark.parametrize(
+ 'url',
+ [
+ '/api/part/',
+ '/api/part/category/',
+ '/api/stock/',
+ '/api/stock/location/',
+ '/api/company/',
+ '/api/build/',
+ #'/api/build/line/',
+ '/api/build/item/',
+ '/api/order/so/',
+ '/api/order/so/shipment/',
+ #'/api/order/po/',
+ #'/api/order/po-line/',
+ '/api/user/roles/',
+ '/api/parameter/',
+ '/api/parameter/template/',
+ ],
+)
+def test_api_list_performance(url):
+ """Benchmark the API list request performance."""
+ result = api_client.get(url)
+ assert result
+ assert len(result) > 0
+
+
+@pytest.mark.benchmark
+@pytest.mark.parametrize(
+ 'url',
+ [
+ '/api/part/',
+ '/api/part/category/',
+ '/api/stock/location/',
+ '/api/company/',
+ '/api/build/',
+ '/api/build/line/',
+ '/api/build/item/',
+ '/api/order/so/',
+ '/api/order/so/shipment/',
+ '/api/order/po/',
+ '/api/order/po-line/',
+ '/api/user/roles/',
+ '/api/parameter/',
+ '/api/parameter/template/',
+ ],
+)
+def test_api_options_performance(url):
+ """Benchmark the API OPTIONS request performance."""
+ response = api_client.request(url, method='OPTIONS')
+ result = json.loads(response.text)
+ assert result
+ assert 'actions' in result
+ assert len(result['actions']) > 0
+
+
+@pytest.mark.benchmark
+@pytest.mark.parametrize(
+ 'key',
+ [
+ 'all',
+ 'part',
+ 'partcategory',
+ 'supplierpart',
+ 'manufacturerpart',
+ 'stockitem',
+ 'stocklocation',
+ 'build',
+ 'supplier',
+ 'manufacturer',
+ 'customer',
+ 'purchaseorder',
+ 'salesorder',
+ 'salesordershipment',
+ 'returnorder',
+ ],
+)
+def test_search_performance(key: str):
+ """Benchmark the API search performance."""
+ SEARCH_URL = '/api/search/'
+
+ # An indicative search query for various model types
+ SEARCH_DATA = {
+ 'part': {'active': True},
+ 'partcategory': {},
+ 'supplierpart': {
+ 'part_detail': True,
+ 'supplier_detail': True,
+ 'manufacturer_detail': True,
+ },
+ 'manufacturerpart': {
+ 'part_detail': True,
+ 'supplier_detail': True,
+ 'manufacturer_detail': True,
+ },
+ 'stockitem': {'part_detail': True, 'location_detail': True, 'in_stock': True},
+ 'stocklocation': {},
+ 'build': {'part_detail': True},
+ 'supplier': {},
+ 'manufacturer': {},
+ 'customer': {},
+ 'purchaseorder': {'supplier_detail': True, 'outstanding': True},
+ 'salesorder': {'customer_detail': True, 'outstanding': True},
+ 'salesordershipment': {},
+ 'returnorder': {'customer_detail': True, 'outstanding': True},
+ }
+
+ model_types = list(SEARCH_DATA.keys())
+
+ search_params = SEARCH_DATA if key == 'all' else {key: SEARCH_DATA[key]}
+
+ # Add in a common search term
+ search_params.update({'search': '0', 'limit': 50})
+
+ response = api_client.post(SEARCH_URL, data=search_params)
+ assert response
+
+ if key == 'all':
+ for model_type in model_types:
+ assert model_type in response
+ assert 'error' not in response[model_type]
+ else:
+ assert key in response
+ assert 'error' not in response[key]
diff --git a/tasks.py b/tasks.py
index eadd601f2d..da042c4489 100644
--- a/tasks.py
+++ b/tasks.py
@@ -1,5 +1,6 @@
"""Tasks for automating certain actions and interacting with InvenTree from the CLI."""
+import datetime
import json
import os
import pathlib
@@ -357,6 +358,26 @@ def manage_py_path():
return manage_py_dir().joinpath('manage.py')
+def _frontend_info():
+ """Return the path of the frontend info directory."""
+ return manage_py_dir().joinpath('web', 'static', 'web', '.vite')
+
+
+def version_target_pth():
+ """Return the path of the target version file."""
+ return _frontend_info().joinpath('tag.txt')
+
+
+def version_sha_pth():
+ """Return the path of the SHA version file."""
+ return _frontend_info().joinpath('sha.txt')
+
+
+def version_source_pth():
+ """Return the path of the source version file."""
+ return _frontend_info().joinpath('source.txt')
+
+
# endregion
if __name__ in ['__main__', 'tasks']:
@@ -598,14 +619,19 @@ def clean_settings(c):
success('Settings cleaned successfully')
-@task(help={'mail': "mail of the user who's MFA should be disabled"})
-def remove_mfa(c, mail=''):
+@task(
+ help={
+ 'mail': "mail of the user who's MFA should be disabled",
+ 'username': "username of the user who's MFA should be disabled",
+ }
+)
+def remove_mfa(c, mail='', username=''):
"""Remove MFA for a user."""
- if not mail:
- warning('You must provide a users mail')
+ if not mail and not username:
+ warning('You must provide a users mail or username')
return
- manage(c, f'remove_mfa {mail}')
+ manage(c, f'remove_mfa --mail {mail} --username {username}')
@task(
@@ -1664,6 +1690,31 @@ def frontend_build(c):
info('Building frontend')
yarn(c, 'yarn run build')
+ def write_info(path: Path, content: str):
+ """Helper function to write version content to file after cleaning it if it exists."""
+ if path.exists():
+ path.unlink()
+ path.write_text(content, encoding='utf-8')
+
+ # Write version marker
+ try:
+ import src.backend.InvenTree.InvenTree.version as InvenTreeVersion # type: ignore[import]
+
+ if version_hash := InvenTreeVersion.inventreeCommitHash():
+ write_info(version_sha_pth(), version_hash)
+ elif version_tag := InvenTreeVersion.inventreeVersion():
+ write_info(version_target_pth(), version_tag)
+ else:
+ warning('No version information available to write frontend version marker')
+
+ # Write source marker
+ write_info(
+ version_source_pth(),
+ f'local build on {datetime.datetime.now().isoformat()}',
+ )
+ except Exception:
+ warning('Failed to write frontend version marker')
+
@task
def frontend_server(c):
@@ -1788,13 +1839,9 @@ def frontend_download(
ref = 'tag' if tag else 'commit'
if tag:
- current = manage_py_dir().joinpath(
- 'web', 'static', 'web', '.vite', 'tag.txt'
- )
+ current = version_target_pth()
elif sha:
- current = manage_py_dir().joinpath(
- 'web', 'static', 'web', '.vite', 'sha.txt'
- )
+ current = version_sha_pth()
else:
raise ValueError('Either tag or sha needs to be set')